// Code generated by protoc-gen-gogo. DO NOT EDIT.
// source: src/api/proto/vispb/vis.proto

package vispb

import (
	encoding_binary "encoding/binary"
	fmt "fmt"
	_ "github.com/gogo/protobuf/gogoproto"
	proto "github.com/gogo/protobuf/proto"
	types "github.com/gogo/protobuf/types"
	io "io"
	math "math"
	math_bits "math/bits"
	reflect "reflect"
	strconv "strconv"
	strings "strings"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package

type PXType int32

const (
	PX_UNKNOWN     PXType = 0
	PX_BOOLEAN     PXType = 1
	PX_INT64       PXType = 2
	PX_FLOAT64     PXType = 3
	PX_STRING      PXType = 4
	PX_SERVICE     PXType = 1000
	PX_POD         PXType = 1001
	PX_CONTAINER   PXType = 1002
	PX_NAMESPACE   PXType = 1003
	PX_NODE        PXType = 1004
	PX_LIST        PXType = 2000
	PX_STRING_LIST PXType = 2001
)

var PXType_name = map[int32]string{
	0:    "PX_UNKNOWN",
	1:    "PX_BOOLEAN",
	2:    "PX_INT64",
	3:    "PX_FLOAT64",
	4:    "PX_STRING",
	1000: "PX_SERVICE",
	1001: "PX_POD",
	1002: "PX_CONTAINER",
	1003: "PX_NAMESPACE",
	1004: "PX_NODE",
	2000: "PX_LIST",
	2001: "PX_STRING_LIST",
}

var PXType_value = map[string]int32{
	"PX_UNKNOWN":     0,
	"PX_BOOLEAN":     1,
	"PX_INT64":       2,
	"PX_FLOAT64":     3,
	"PX_STRING":      4,
	"PX_SERVICE":     1000,
	"PX_POD":         1001,
	"PX_CONTAINER":   1002,
	"PX_NAMESPACE":   1003,
	"PX_NODE":        1004,
	"PX_LIST":        2000,
	"PX_STRING_LIST": 2001,
}

func (PXType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{0}
}

type TimeseriesChart_Timeseries_Mode int32

const (
	MODE_UNKNOWN TimeseriesChart_Timeseries_Mode = 0
	MODE_LINE    TimeseriesChart_Timeseries_Mode = 2
	MODE_POINT   TimeseriesChart_Timeseries_Mode = 3
	MODE_AREA    TimeseriesChart_Timeseries_Mode = 4
)

var TimeseriesChart_Timeseries_Mode_name = map[int32]string{
	0: "MODE_UNKNOWN",
	2: "MODE_LINE",
	3: "MODE_POINT",
	4: "MODE_AREA",
}

var TimeseriesChart_Timeseries_Mode_value = map[string]int32{
	"MODE_UNKNOWN": 0,
	"MODE_LINE":    2,
	"MODE_POINT":   3,
	"MODE_AREA":    4,
}

func (TimeseriesChart_Timeseries_Mode) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{7, 0, 0}
}

type Vis struct {
	Variables   []*Vis_Variable   `protobuf:"bytes,1,rep,name=variables,proto3" json:"variables,omitempty"`
	Widgets     []*Widget         `protobuf:"bytes,2,rep,name=widgets,proto3" json:"widgets,omitempty"`
	GlobalFuncs []*Vis_GlobalFunc `protobuf:"bytes,3,rep,name=global_funcs,json=globalFuncs,proto3" json:"global_funcs,omitempty"`
}

func (m *Vis) Reset()      { *m = Vis{} }
func (*Vis) ProtoMessage() {}
func (*Vis) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{0}
}
func (m *Vis) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Vis) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Vis.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Vis) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Vis.Merge(m, src)
}
func (m *Vis) XXX_Size() int {
	return m.Size()
}
func (m *Vis) XXX_DiscardUnknown() {
	xxx_messageInfo_Vis.DiscardUnknown(m)
}

var xxx_messageInfo_Vis proto.InternalMessageInfo

func (m *Vis) GetVariables() []*Vis_Variable {
	if m != nil {
		return m.Variables
	}
	return nil
}

func (m *Vis) GetWidgets() []*Widget {
	if m != nil {
		return m.Widgets
	}
	return nil
}

func (m *Vis) GetGlobalFuncs() []*Vis_GlobalFunc {
	if m != nil {
		return m.GlobalFuncs
	}
	return nil
}

type Vis_Variable struct {
	Name         string             `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Type         PXType             `protobuf:"varint,2,opt,name=type,proto3,enum=px.vispb.PXType" json:"type,omitempty"`
	DefaultValue *types.StringValue `protobuf:"bytes,3,opt,name=default_value,json=defaultValue,proto3" json:"default_value,omitempty"`
	Description  string             `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
	ValidValues  []string           `protobuf:"bytes,5,rep,name=valid_values,json=validValues,proto3" json:"valid_values,omitempty"`
}

func (m *Vis_Variable) Reset()      { *m = Vis_Variable{} }
func (*Vis_Variable) ProtoMessage() {}
func (*Vis_Variable) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{0, 0}
}
func (m *Vis_Variable) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Vis_Variable) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Vis_Variable.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Vis_Variable) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Vis_Variable.Merge(m, src)
}
func (m *Vis_Variable) XXX_Size() int {
	return m.Size()
}
func (m *Vis_Variable) XXX_DiscardUnknown() {
	xxx_messageInfo_Vis_Variable.DiscardUnknown(m)
}

var xxx_messageInfo_Vis_Variable proto.InternalMessageInfo

func (m *Vis_Variable) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *Vis_Variable) GetType() PXType {
	if m != nil {
		return m.Type
	}
	return PX_UNKNOWN
}

func (m *Vis_Variable) GetDefaultValue() *types.StringValue {
	if m != nil {
		return m.DefaultValue
	}
	return nil
}

func (m *Vis_Variable) GetDescription() string {
	if m != nil {
		return m.Description
	}
	return ""
}

func (m *Vis_Variable) GetValidValues() []string {
	if m != nil {
		return m.ValidValues
	}
	return nil
}

type Vis_GlobalFunc struct {
	OutputName string       `protobuf:"bytes,1,opt,name=output_name,json=outputName,proto3" json:"output_name,omitempty"`
	Func       *Widget_Func `protobuf:"bytes,2,opt,name=func,proto3" json:"func,omitempty"`
}

func (m *Vis_GlobalFunc) Reset()      { *m = Vis_GlobalFunc{} }
func (*Vis_GlobalFunc) ProtoMessage() {}
func (*Vis_GlobalFunc) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{0, 1}
}
func (m *Vis_GlobalFunc) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Vis_GlobalFunc) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Vis_GlobalFunc.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Vis_GlobalFunc) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Vis_GlobalFunc.Merge(m, src)
}
func (m *Vis_GlobalFunc) XXX_Size() int {
	return m.Size()
}
func (m *Vis_GlobalFunc) XXX_DiscardUnknown() {
	xxx_messageInfo_Vis_GlobalFunc.DiscardUnknown(m)
}

var xxx_messageInfo_Vis_GlobalFunc proto.InternalMessageInfo

func (m *Vis_GlobalFunc) GetOutputName() string {
	if m != nil {
		return m.OutputName
	}
	return ""
}

func (m *Vis_GlobalFunc) GetFunc() *Widget_Func {
	if m != nil {
		return m.Func
	}
	return nil
}

type Widget struct {
	Name     string           `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Position *Widget_Position `protobuf:"bytes,2,opt,name=position,proto3" json:"position,omitempty"`
	// Types that are valid to be assigned to FuncOrRef:
	//
	//	*Widget_Func_
	//	*Widget_GlobalFuncOutputName
	FuncOrRef   isWidget_FuncOrRef `protobuf_oneof:"func_or_ref"`
	DisplaySpec *types.Any         `protobuf:"bytes,4,opt,name=display_spec,json=displaySpec,proto3" json:"display_spec,omitempty"`
}

func (m *Widget) Reset()      { *m = Widget{} }
func (*Widget) ProtoMessage() {}
func (*Widget) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{1}
}
func (m *Widget) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Widget) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Widget.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Widget) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Widget.Merge(m, src)
}
func (m *Widget) XXX_Size() int {
	return m.Size()
}
func (m *Widget) XXX_DiscardUnknown() {
	xxx_messageInfo_Widget.DiscardUnknown(m)
}

var xxx_messageInfo_Widget proto.InternalMessageInfo

type isWidget_FuncOrRef interface {
	isWidget_FuncOrRef()
	Equal(interface{}) bool
	MarshalTo([]byte) (int, error)
	Size() int
}

type Widget_Func_ struct {
	Func *Widget_Func `protobuf:"bytes,3,opt,name=func,proto3,oneof" json:"func,omitempty"`
}
type Widget_GlobalFuncOutputName struct {
	GlobalFuncOutputName string `protobuf:"bytes,5,opt,name=global_func_output_name,json=globalFuncOutputName,proto3,oneof" json:"global_func_output_name,omitempty"`
}

func (*Widget_Func_) isWidget_FuncOrRef()                {}
func (*Widget_GlobalFuncOutputName) isWidget_FuncOrRef() {}

func (m *Widget) GetFuncOrRef() isWidget_FuncOrRef {
	if m != nil {
		return m.FuncOrRef
	}
	return nil
}

func (m *Widget) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *Widget) GetPosition() *Widget_Position {
	if m != nil {
		return m.Position
	}
	return nil
}

func (m *Widget) GetFunc() *Widget_Func {
	if x, ok := m.GetFuncOrRef().(*Widget_Func_); ok {
		return x.Func
	}
	return nil
}

func (m *Widget) GetGlobalFuncOutputName() string {
	if x, ok := m.GetFuncOrRef().(*Widget_GlobalFuncOutputName); ok {
		return x.GlobalFuncOutputName
	}
	return ""
}

func (m *Widget) GetDisplaySpec() *types.Any {
	if m != nil {
		return m.DisplaySpec
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*Widget) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*Widget_Func_)(nil),
		(*Widget_GlobalFuncOutputName)(nil),
	}
}

type Widget_Position struct {
	X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
	Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"`
	W int32 `protobuf:"varint,3,opt,name=w,proto3" json:"w,omitempty"`
	H int32 `protobuf:"varint,4,opt,name=h,proto3" json:"h,omitempty"`
}

func (m *Widget_Position) Reset()      { *m = Widget_Position{} }
func (*Widget_Position) ProtoMessage() {}
func (*Widget_Position) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{1, 0}
}
func (m *Widget_Position) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Widget_Position) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Widget_Position.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Widget_Position) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Widget_Position.Merge(m, src)
}
func (m *Widget_Position) XXX_Size() int {
	return m.Size()
}
func (m *Widget_Position) XXX_DiscardUnknown() {
	xxx_messageInfo_Widget_Position.DiscardUnknown(m)
}

var xxx_messageInfo_Widget_Position proto.InternalMessageInfo

func (m *Widget_Position) GetX() int32 {
	if m != nil {
		return m.X
	}
	return 0
}

func (m *Widget_Position) GetY() int32 {
	if m != nil {
		return m.Y
	}
	return 0
}

func (m *Widget_Position) GetW() int32 {
	if m != nil {
		return m.W
	}
	return 0
}

func (m *Widget_Position) GetH() int32 {
	if m != nil {
		return m.H
	}
	return 0
}

type Widget_Func struct {
	Name string                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Args []*Widget_Func_FuncArg `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"`
}

func (m *Widget_Func) Reset()      { *m = Widget_Func{} }
func (*Widget_Func) ProtoMessage() {}
func (*Widget_Func) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{1, 1}
}
func (m *Widget_Func) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Widget_Func) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Widget_Func.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Widget_Func) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Widget_Func.Merge(m, src)
}
func (m *Widget_Func) XXX_Size() int {
	return m.Size()
}
func (m *Widget_Func) XXX_DiscardUnknown() {
	xxx_messageInfo_Widget_Func.DiscardUnknown(m)
}

var xxx_messageInfo_Widget_Func proto.InternalMessageInfo

func (m *Widget_Func) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *Widget_Func) GetArgs() []*Widget_Func_FuncArg {
	if m != nil {
		return m.Args
	}
	return nil
}

type Widget_Func_FuncArg struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Types that are valid to be assigned to Input:
	//
	//	*Widget_Func_FuncArg_Value
	//	*Widget_Func_FuncArg_Variable
	Input isWidget_Func_FuncArg_Input `protobuf_oneof:"input"`
}

func (m *Widget_Func_FuncArg) Reset()      { *m = Widget_Func_FuncArg{} }
func (*Widget_Func_FuncArg) ProtoMessage() {}
func (*Widget_Func_FuncArg) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{1, 1, 0}
}
func (m *Widget_Func_FuncArg) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Widget_Func_FuncArg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Widget_Func_FuncArg.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Widget_Func_FuncArg) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Widget_Func_FuncArg.Merge(m, src)
}
func (m *Widget_Func_FuncArg) XXX_Size() int {
	return m.Size()
}
func (m *Widget_Func_FuncArg) XXX_DiscardUnknown() {
	xxx_messageInfo_Widget_Func_FuncArg.DiscardUnknown(m)
}

var xxx_messageInfo_Widget_Func_FuncArg proto.InternalMessageInfo

type isWidget_Func_FuncArg_Input interface {
	isWidget_Func_FuncArg_Input()
	Equal(interface{}) bool
	MarshalTo([]byte) (int, error)
	Size() int
}

type Widget_Func_FuncArg_Value struct {
	Value string `protobuf:"bytes,2,opt,name=value,proto3,oneof" json:"value,omitempty"`
}
type Widget_Func_FuncArg_Variable struct {
	Variable string `protobuf:"bytes,3,opt,name=variable,proto3,oneof" json:"variable,omitempty"`
}

func (*Widget_Func_FuncArg_Value) isWidget_Func_FuncArg_Input()    {}
func (*Widget_Func_FuncArg_Variable) isWidget_Func_FuncArg_Input() {}

func (m *Widget_Func_FuncArg) GetInput() isWidget_Func_FuncArg_Input {
	if m != nil {
		return m.Input
	}
	return nil
}

func (m *Widget_Func_FuncArg) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *Widget_Func_FuncArg) GetValue() string {
	if x, ok := m.GetInput().(*Widget_Func_FuncArg_Value); ok {
		return x.Value
	}
	return ""
}

func (m *Widget_Func_FuncArg) GetVariable() string {
	if x, ok := m.GetInput().(*Widget_Func_FuncArg_Variable); ok {
		return x.Variable
	}
	return ""
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*Widget_Func_FuncArg) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*Widget_Func_FuncArg_Value)(nil),
		(*Widget_Func_FuncArg_Variable)(nil),
	}
}

type Axis struct {
	Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
}

func (m *Axis) Reset()      { *m = Axis{} }
func (*Axis) ProtoMessage() {}
func (*Axis) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{2}
}
func (m *Axis) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Axis) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Axis.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Axis) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Axis.Merge(m, src)
}
func (m *Axis) XXX_Size() int {
	return m.Size()
}
func (m *Axis) XXX_DiscardUnknown() {
	xxx_messageInfo_Axis.DiscardUnknown(m)
}

var xxx_messageInfo_Axis proto.InternalMessageInfo

func (m *Axis) GetLabel() string {
	if m != nil {
		return m.Label
	}
	return ""
}

type BarChart struct {
	Bar   *BarChart_Bar `protobuf:"bytes,1,opt,name=bar,proto3" json:"bar,omitempty"`
	Title string        `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	XAxis *Axis         `protobuf:"bytes,3,opt,name=x_axis,json=xAxis,proto3" json:"x_axis,omitempty"`
	YAxis *Axis         `protobuf:"bytes,4,opt,name=y_axis,json=yAxis,proto3" json:"y_axis,omitempty"`
}

func (m *BarChart) Reset()      { *m = BarChart{} }
func (*BarChart) ProtoMessage() {}
func (*BarChart) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{3}
}
func (m *BarChart) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *BarChart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_BarChart.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *BarChart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BarChart.Merge(m, src)
}
func (m *BarChart) XXX_Size() int {
	return m.Size()
}
func (m *BarChart) XXX_DiscardUnknown() {
	xxx_messageInfo_BarChart.DiscardUnknown(m)
}

var xxx_messageInfo_BarChart proto.InternalMessageInfo

func (m *BarChart) GetBar() *BarChart_Bar {
	if m != nil {
		return m.Bar
	}
	return nil
}

func (m *BarChart) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

func (m *BarChart) GetXAxis() *Axis {
	if m != nil {
		return m.XAxis
	}
	return nil
}

func (m *BarChart) GetYAxis() *Axis {
	if m != nil {
		return m.YAxis
	}
	return nil
}

type BarChart_Bar struct {
	Value      string `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	Label      string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	StackBy    string `protobuf:"bytes,3,opt,name=stack_by,json=stackBy,proto3" json:"stack_by,omitempty"`
	GroupBy    string `protobuf:"bytes,4,opt,name=group_by,json=groupBy,proto3" json:"group_by,omitempty"`
	Horizontal bool   `protobuf:"varint,5,opt,name=horizontal,proto3" json:"horizontal,omitempty"`
}

func (m *BarChart_Bar) Reset()      { *m = BarChart_Bar{} }
func (*BarChart_Bar) ProtoMessage() {}
func (*BarChart_Bar) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{3, 0}
}
func (m *BarChart_Bar) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *BarChart_Bar) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_BarChart_Bar.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *BarChart_Bar) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BarChart_Bar.Merge(m, src)
}
func (m *BarChart_Bar) XXX_Size() int {
	return m.Size()
}
func (m *BarChart_Bar) XXX_DiscardUnknown() {
	xxx_messageInfo_BarChart_Bar.DiscardUnknown(m)
}

var xxx_messageInfo_BarChart_Bar proto.InternalMessageInfo

func (m *BarChart_Bar) GetValue() string {
	if m != nil {
		return m.Value
	}
	return ""
}

func (m *BarChart_Bar) GetLabel() string {
	if m != nil {
		return m.Label
	}
	return ""
}

func (m *BarChart_Bar) GetStackBy() string {
	if m != nil {
		return m.StackBy
	}
	return ""
}

func (m *BarChart_Bar) GetGroupBy() string {
	if m != nil {
		return m.GroupBy
	}
	return ""
}

func (m *BarChart_Bar) GetHorizontal() bool {
	if m != nil {
		return m.Horizontal
	}
	return false
}

type PieChart struct {
	Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"`
}

func (m *PieChart) Reset()      { *m = PieChart{} }
func (*PieChart) ProtoMessage() {}
func (*PieChart) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{4}
}
func (m *PieChart) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *PieChart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_PieChart.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *PieChart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PieChart.Merge(m, src)
}
func (m *PieChart) XXX_Size() int {
	return m.Size()
}
func (m *PieChart) XXX_DiscardUnknown() {
	xxx_messageInfo_PieChart.DiscardUnknown(m)
}

var xxx_messageInfo_PieChart proto.InternalMessageInfo

func (m *PieChart) GetLabel() string {
	if m != nil {
		return m.Label
	}
	return ""
}

func (m *PieChart) GetValue() string {
	if m != nil {
		return m.Value
	}
	return ""
}

func (m *PieChart) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

type HistogramChart struct {
	Histogram *HistogramChart_Histogram `protobuf:"bytes,1,opt,name=histogram,proto3" json:"histogram,omitempty"`
	Title     string                    `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	XAxis     *Axis                     `protobuf:"bytes,3,opt,name=x_axis,json=xAxis,proto3" json:"x_axis,omitempty"`
	YAxis     *Axis                     `protobuf:"bytes,4,opt,name=y_axis,json=yAxis,proto3" json:"y_axis,omitempty"`
}

func (m *HistogramChart) Reset()      { *m = HistogramChart{} }
func (*HistogramChart) ProtoMessage() {}
func (*HistogramChart) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{5}
}
func (m *HistogramChart) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *HistogramChart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_HistogramChart.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *HistogramChart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HistogramChart.Merge(m, src)
}
func (m *HistogramChart) XXX_Size() int {
	return m.Size()
}
func (m *HistogramChart) XXX_DiscardUnknown() {
	xxx_messageInfo_HistogramChart.DiscardUnknown(m)
}

var xxx_messageInfo_HistogramChart proto.InternalMessageInfo

func (m *HistogramChart) GetHistogram() *HistogramChart_Histogram {
	if m != nil {
		return m.Histogram
	}
	return nil
}

func (m *HistogramChart) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

func (m *HistogramChart) GetXAxis() *Axis {
	if m != nil {
		return m.XAxis
	}
	return nil
}

func (m *HistogramChart) GetYAxis() *Axis {
	if m != nil {
		return m.YAxis
	}
	return nil
}

type HistogramChart_Histogram struct {
	Value       string  `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	Maxbins     int64   `protobuf:"varint,2,opt,name=maxbins,proto3" json:"maxbins,omitempty"`
	Minstep     float64 `protobuf:"fixed64,3,opt,name=minstep,proto3" json:"minstep,omitempty"`
	Horizontal  bool    `protobuf:"varint,4,opt,name=horizontal,proto3" json:"horizontal,omitempty"`
	PrebinCount string  `protobuf:"bytes,5,opt,name=prebin_count,json=prebinCount,proto3" json:"prebin_count,omitempty"`
}

func (m *HistogramChart_Histogram) Reset()      { *m = HistogramChart_Histogram{} }
func (*HistogramChart_Histogram) ProtoMessage() {}
func (*HistogramChart_Histogram) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{5, 0}
}
func (m *HistogramChart_Histogram) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *HistogramChart_Histogram) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_HistogramChart_Histogram.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *HistogramChart_Histogram) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HistogramChart_Histogram.Merge(m, src)
}
func (m *HistogramChart_Histogram) XXX_Size() int {
	return m.Size()
}
func (m *HistogramChart_Histogram) XXX_DiscardUnknown() {
	xxx_messageInfo_HistogramChart_Histogram.DiscardUnknown(m)
}

var xxx_messageInfo_HistogramChart_Histogram proto.InternalMessageInfo

func (m *HistogramChart_Histogram) GetValue() string {
	if m != nil {
		return m.Value
	}
	return ""
}

func (m *HistogramChart_Histogram) GetMaxbins() int64 {
	if m != nil {
		return m.Maxbins
	}
	return 0
}

func (m *HistogramChart_Histogram) GetMinstep() float64 {
	if m != nil {
		return m.Minstep
	}
	return 0
}

func (m *HistogramChart_Histogram) GetHorizontal() bool {
	if m != nil {
		return m.Horizontal
	}
	return false
}

func (m *HistogramChart_Histogram) GetPrebinCount() string {
	if m != nil {
		return m.PrebinCount
	}
	return ""
}

type GaugeChart struct {
	Value string `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
}

func (m *GaugeChart) Reset()      { *m = GaugeChart{} }
func (*GaugeChart) ProtoMessage() {}
func (*GaugeChart) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{6}
}
func (m *GaugeChart) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *GaugeChart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_GaugeChart.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *GaugeChart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GaugeChart.Merge(m, src)
}
func (m *GaugeChart) XXX_Size() int {
	return m.Size()
}
func (m *GaugeChart) XXX_DiscardUnknown() {
	xxx_messageInfo_GaugeChart.DiscardUnknown(m)
}

var xxx_messageInfo_GaugeChart proto.InternalMessageInfo

func (m *GaugeChart) GetValue() string {
	if m != nil {
		return m.Value
	}
	return ""
}

func (m *GaugeChart) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

type TimeseriesChart struct {
	Timeseries []*TimeseriesChart_Timeseries `protobuf:"bytes,1,rep,name=timeseries,proto3" json:"timeseries,omitempty"`
	Title      string                        `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	XAxis      *Axis                         `protobuf:"bytes,3,opt,name=x_axis,json=xAxis,proto3" json:"x_axis,omitempty"`
	YAxis      *Axis                         `protobuf:"bytes,4,opt,name=y_axis,json=yAxis,proto3" json:"y_axis,omitempty"`
}

func (m *TimeseriesChart) Reset()      { *m = TimeseriesChart{} }
func (*TimeseriesChart) ProtoMessage() {}
func (*TimeseriesChart) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{7}
}
func (m *TimeseriesChart) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *TimeseriesChart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_TimeseriesChart.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *TimeseriesChart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TimeseriesChart.Merge(m, src)
}
func (m *TimeseriesChart) XXX_Size() int {
	return m.Size()
}
func (m *TimeseriesChart) XXX_DiscardUnknown() {
	xxx_messageInfo_TimeseriesChart.DiscardUnknown(m)
}

var xxx_messageInfo_TimeseriesChart proto.InternalMessageInfo

func (m *TimeseriesChart) GetTimeseries() []*TimeseriesChart_Timeseries {
	if m != nil {
		return m.Timeseries
	}
	return nil
}

func (m *TimeseriesChart) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

func (m *TimeseriesChart) GetXAxis() *Axis {
	if m != nil {
		return m.XAxis
	}
	return nil
}

func (m *TimeseriesChart) GetYAxis() *Axis {
	if m != nil {
		return m.YAxis
	}
	return nil
}

type TimeseriesChart_Timeseries struct {
	Value         string                          `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	Series        string                          `protobuf:"bytes,2,opt,name=series,proto3" json:"series,omitempty"`
	StackBySeries bool                            `protobuf:"varint,3,opt,name=stack_by_series,json=stackBySeries,proto3" json:"stack_by_series,omitempty"`
	Mode          TimeseriesChart_Timeseries_Mode `protobuf:"varint,4,opt,name=mode,proto3,enum=px.vispb.TimeseriesChart_Timeseries_Mode" json:"mode,omitempty"`
}

func (m *TimeseriesChart_Timeseries) Reset()      { *m = TimeseriesChart_Timeseries{} }
func (*TimeseriesChart_Timeseries) ProtoMessage() {}
func (*TimeseriesChart_Timeseries) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{7, 0}
}
func (m *TimeseriesChart_Timeseries) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *TimeseriesChart_Timeseries) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_TimeseriesChart_Timeseries.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *TimeseriesChart_Timeseries) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TimeseriesChart_Timeseries.Merge(m, src)
}
func (m *TimeseriesChart_Timeseries) XXX_Size() int {
	return m.Size()
}
func (m *TimeseriesChart_Timeseries) XXX_DiscardUnknown() {
	xxx_messageInfo_TimeseriesChart_Timeseries.DiscardUnknown(m)
}

var xxx_messageInfo_TimeseriesChart_Timeseries proto.InternalMessageInfo

func (m *TimeseriesChart_Timeseries) GetValue() string {
	if m != nil {
		return m.Value
	}
	return ""
}

func (m *TimeseriesChart_Timeseries) GetSeries() string {
	if m != nil {
		return m.Series
	}
	return ""
}

func (m *TimeseriesChart_Timeseries) GetStackBySeries() bool {
	if m != nil {
		return m.StackBySeries
	}
	return false
}

func (m *TimeseriesChart_Timeseries) GetMode() TimeseriesChart_Timeseries_Mode {
	if m != nil {
		return m.Mode
	}
	return MODE_UNKNOWN
}

type StatChart struct {
	Stat  *StatChart_Stat `protobuf:"bytes,1,opt,name=stat,proto3" json:"stat,omitempty"`
	Title string          `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
}

func (m *StatChart) Reset()      { *m = StatChart{} }
func (*StatChart) ProtoMessage() {}
func (*StatChart) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{8}
}
func (m *StatChart) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *StatChart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_StatChart.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *StatChart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StatChart.Merge(m, src)
}
func (m *StatChart) XXX_Size() int {
	return m.Size()
}
func (m *StatChart) XXX_DiscardUnknown() {
	xxx_messageInfo_StatChart.DiscardUnknown(m)
}

var xxx_messageInfo_StatChart proto.InternalMessageInfo

func (m *StatChart) GetStat() *StatChart_Stat {
	if m != nil {
		return m.Stat
	}
	return nil
}

func (m *StatChart) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

type StatChart_Stat struct {
	Value string `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
}

func (m *StatChart_Stat) Reset()      { *m = StatChart_Stat{} }
func (*StatChart_Stat) ProtoMessage() {}
func (*StatChart_Stat) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{8, 0}
}
func (m *StatChart_Stat) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *StatChart_Stat) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_StatChart_Stat.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *StatChart_Stat) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StatChart_Stat.Merge(m, src)
}
func (m *StatChart_Stat) XXX_Size() int {
	return m.Size()
}
func (m *StatChart_Stat) XXX_DiscardUnknown() {
	xxx_messageInfo_StatChart_Stat.DiscardUnknown(m)
}

var xxx_messageInfo_StatChart_Stat proto.InternalMessageInfo

func (m *StatChart_Stat) GetValue() string {
	if m != nil {
		return m.Value
	}
	return ""
}

type TextChart struct {
	Body string `protobuf:"bytes,1,opt,name=body,proto3" json:"body,omitempty"`
}

func (m *TextChart) Reset()      { *m = TextChart{} }
func (*TextChart) ProtoMessage() {}
func (*TextChart) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{9}
}
func (m *TextChart) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *TextChart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_TextChart.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *TextChart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TextChart.Merge(m, src)
}
func (m *TextChart) XXX_Size() int {
	return m.Size()
}
func (m *TextChart) XXX_DiscardUnknown() {
	xxx_messageInfo_TextChart.DiscardUnknown(m)
}

var xxx_messageInfo_TextChart proto.InternalMessageInfo

func (m *TextChart) GetBody() string {
	if m != nil {
		return m.Body
	}
	return ""
}

type VegaChart struct {
	Spec string `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"`
}

func (m *VegaChart) Reset()      { *m = VegaChart{} }
func (*VegaChart) ProtoMessage() {}
func (*VegaChart) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{10}
}
func (m *VegaChart) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *VegaChart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_VegaChart.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *VegaChart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_VegaChart.Merge(m, src)
}
func (m *VegaChart) XXX_Size() int {
	return m.Size()
}
func (m *VegaChart) XXX_DiscardUnknown() {
	xxx_messageInfo_VegaChart.DiscardUnknown(m)
}

var xxx_messageInfo_VegaChart proto.InternalMessageInfo

func (m *VegaChart) GetSpec() string {
	if m != nil {
		return m.Spec
	}
	return ""
}

type Table struct {
	GutterColumn string `protobuf:"bytes,1,opt,name=gutter_column,json=gutterColumn,proto3" json:"gutter_column,omitempty"`
}

func (m *Table) Reset()      { *m = Table{} }
func (*Table) ProtoMessage() {}
func (*Table) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{11}
}
func (m *Table) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Table) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Table.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Table) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Table.Merge(m, src)
}
func (m *Table) XXX_Size() int {
	return m.Size()
}
func (m *Table) XXX_DiscardUnknown() {
	xxx_messageInfo_Table.DiscardUnknown(m)
}

var xxx_messageInfo_Table proto.InternalMessageInfo

func (m *Table) GetGutterColumn() string {
	if m != nil {
		return m.GutterColumn
	}
	return ""
}

type Graph struct {
	// Types that are valid to be assigned to Input:
	//
	//	*Graph_DotColumn
	//	*Graph_AdjacencyList_
	Input                  isGraph_Input         `protobuf_oneof:"input"`
	EdgeWeightColumn       string                `protobuf:"bytes,3,opt,name=edge_weight_column,json=edgeWeightColumn,proto3" json:"edge_weight_column,omitempty"`
	NodeWeightColumn       string                `protobuf:"bytes,4,opt,name=node_weight_column,json=nodeWeightColumn,proto3" json:"node_weight_column,omitempty"`
	EdgeColorColumn        string                `protobuf:"bytes,5,opt,name=edge_color_column,json=edgeColorColumn,proto3" json:"edge_color_column,omitempty"`
	EdgeThresholds         *Graph_EdgeThresholds `protobuf:"bytes,6,opt,name=edge_thresholds,json=edgeThresholds,proto3" json:"edge_thresholds,omitempty"`
	EdgeHoverInfo          []string              `protobuf:"bytes,7,rep,name=edge_hover_info,json=edgeHoverInfo,proto3" json:"edge_hover_info,omitempty"`
	EdgeLength             int64                 `protobuf:"varint,8,opt,name=edge_length,json=edgeLength,proto3" json:"edge_length,omitempty"`
	EnableDefaultHierarchy bool                  `protobuf:"varint,9,opt,name=enable_default_hierarchy,json=enableDefaultHierarchy,proto3" json:"enable_default_hierarchy,omitempty"`
}

func (m *Graph) Reset()      { *m = Graph{} }
func (*Graph) ProtoMessage() {}
func (*Graph) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{12}
}
func (m *Graph) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Graph) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Graph.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Graph) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Graph.Merge(m, src)
}
func (m *Graph) XXX_Size() int {
	return m.Size()
}
func (m *Graph) XXX_DiscardUnknown() {
	xxx_messageInfo_Graph.DiscardUnknown(m)
}

var xxx_messageInfo_Graph proto.InternalMessageInfo

type isGraph_Input interface {
	isGraph_Input()
	Equal(interface{}) bool
	MarshalTo([]byte) (int, error)
	Size() int
}

type Graph_DotColumn struct {
	DotColumn string `protobuf:"bytes,1,opt,name=dot_column,json=dotColumn,proto3,oneof" json:"dot_column,omitempty"`
}
type Graph_AdjacencyList_ struct {
	AdjacencyList *Graph_AdjacencyList `protobuf:"bytes,2,opt,name=adjacency_list,json=adjacencyList,proto3,oneof" json:"adjacency_list,omitempty"`
}

func (*Graph_DotColumn) isGraph_Input()      {}
func (*Graph_AdjacencyList_) isGraph_Input() {}

func (m *Graph) GetInput() isGraph_Input {
	if m != nil {
		return m.Input
	}
	return nil
}

func (m *Graph) GetDotColumn() string {
	if x, ok := m.GetInput().(*Graph_DotColumn); ok {
		return x.DotColumn
	}
	return ""
}

func (m *Graph) GetAdjacencyList() *Graph_AdjacencyList {
	if x, ok := m.GetInput().(*Graph_AdjacencyList_); ok {
		return x.AdjacencyList
	}
	return nil
}

func (m *Graph) GetEdgeWeightColumn() string {
	if m != nil {
		return m.EdgeWeightColumn
	}
	return ""
}

func (m *Graph) GetNodeWeightColumn() string {
	if m != nil {
		return m.NodeWeightColumn
	}
	return ""
}

func (m *Graph) GetEdgeColorColumn() string {
	if m != nil {
		return m.EdgeColorColumn
	}
	return ""
}

func (m *Graph) GetEdgeThresholds() *Graph_EdgeThresholds {
	if m != nil {
		return m.EdgeThresholds
	}
	return nil
}

func (m *Graph) GetEdgeHoverInfo() []string {
	if m != nil {
		return m.EdgeHoverInfo
	}
	return nil
}

func (m *Graph) GetEdgeLength() int64 {
	if m != nil {
		return m.EdgeLength
	}
	return 0
}

func (m *Graph) GetEnableDefaultHierarchy() bool {
	if m != nil {
		return m.EnableDefaultHierarchy
	}
	return false
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*Graph) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*Graph_DotColumn)(nil),
		(*Graph_AdjacencyList_)(nil),
	}
}

type Graph_AdjacencyList struct {
	FromColumn string `protobuf:"bytes,1,opt,name=from_column,json=fromColumn,proto3" json:"from_column,omitempty"`
	ToColumn   string `protobuf:"bytes,2,opt,name=to_column,json=toColumn,proto3" json:"to_column,omitempty"`
}

func (m *Graph_AdjacencyList) Reset()      { *m = Graph_AdjacencyList{} }
func (*Graph_AdjacencyList) ProtoMessage() {}
func (*Graph_AdjacencyList) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{12, 0}
}
func (m *Graph_AdjacencyList) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Graph_AdjacencyList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Graph_AdjacencyList.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Graph_AdjacencyList) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Graph_AdjacencyList.Merge(m, src)
}
func (m *Graph_AdjacencyList) XXX_Size() int {
	return m.Size()
}
func (m *Graph_AdjacencyList) XXX_DiscardUnknown() {
	xxx_messageInfo_Graph_AdjacencyList.DiscardUnknown(m)
}

var xxx_messageInfo_Graph_AdjacencyList proto.InternalMessageInfo

func (m *Graph_AdjacencyList) GetFromColumn() string {
	if m != nil {
		return m.FromColumn
	}
	return ""
}

func (m *Graph_AdjacencyList) GetToColumn() string {
	if m != nil {
		return m.ToColumn
	}
	return ""
}

type Graph_EdgeThresholds struct {
	MediumThreshold int64 `protobuf:"varint,1,opt,name=medium_threshold,json=mediumThreshold,proto3" json:"medium_threshold,omitempty"`
	HighThreshold   int64 `protobuf:"varint,2,opt,name=high_threshold,json=highThreshold,proto3" json:"high_threshold,omitempty"`
}

func (m *Graph_EdgeThresholds) Reset()      { *m = Graph_EdgeThresholds{} }
func (*Graph_EdgeThresholds) ProtoMessage() {}
func (*Graph_EdgeThresholds) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{12, 1}
}
func (m *Graph_EdgeThresholds) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *Graph_EdgeThresholds) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_Graph_EdgeThresholds.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *Graph_EdgeThresholds) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Graph_EdgeThresholds.Merge(m, src)
}
func (m *Graph_EdgeThresholds) XXX_Size() int {
	return m.Size()
}
func (m *Graph_EdgeThresholds) XXX_DiscardUnknown() {
	xxx_messageInfo_Graph_EdgeThresholds.DiscardUnknown(m)
}

var xxx_messageInfo_Graph_EdgeThresholds proto.InternalMessageInfo

func (m *Graph_EdgeThresholds) GetMediumThreshold() int64 {
	if m != nil {
		return m.MediumThreshold
	}
	return 0
}

func (m *Graph_EdgeThresholds) GetHighThreshold() int64 {
	if m != nil {
		return m.HighThreshold
	}
	return 0
}

type RequestGraph struct {
	RequestorPodColumn           string `protobuf:"bytes,1,opt,name=requestor_pod_column,json=requestorPodColumn,proto3" json:"requestor_pod_column,omitempty"`
	ResponderPodColumn           string `protobuf:"bytes,2,opt,name=responder_pod_column,json=responderPodColumn,proto3" json:"responder_pod_column,omitempty"`
	RequestorServiceColumn       string `protobuf:"bytes,3,opt,name=requestor_service_column,json=requestorServiceColumn,proto3" json:"requestor_service_column,omitempty"`
	ResponderServiceColumn       string `protobuf:"bytes,4,opt,name=responder_service_column,json=responderServiceColumn,proto3" json:"responder_service_column,omitempty"`
	RequestorIPColumn            string `protobuf:"bytes,13,opt,name=requestor_i_p_column,json=requestorIPColumn,proto3" json:"requestor_i_p_column,omitempty"`
	ResponderIPColumn            string `protobuf:"bytes,14,opt,name=responder_i_p_column,json=responderIPColumn,proto3" json:"responder_i_p_column,omitempty"`
	P50Column                    string `protobuf:"bytes,5,opt,name=p50_column,json=p50Column,proto3" json:"p50_column,omitempty"`
	P90Column                    string `protobuf:"bytes,6,opt,name=p90_column,json=p90Column,proto3" json:"p90_column,omitempty"`
	P99Column                    string `protobuf:"bytes,7,opt,name=p99_column,json=p99Column,proto3" json:"p99_column,omitempty"`
	ErrorRateColumn              string `protobuf:"bytes,8,opt,name=error_rate_column,json=errorRateColumn,proto3" json:"error_rate_column,omitempty"`
	RequestsPerSecondColumn      string `protobuf:"bytes,9,opt,name=requests_per_second_column,json=requestsPerSecondColumn,proto3" json:"requests_per_second_column,omitempty"`
	InboundBytesPerSecondColumn  string `protobuf:"bytes,10,opt,name=inbound_bytes_per_second_column,json=inboundBytesPerSecondColumn,proto3" json:"inbound_bytes_per_second_column,omitempty"`
	OutboundBytesPerSecondColumn string `protobuf:"bytes,11,opt,name=outbound_bytes_per_second_column,json=outboundBytesPerSecondColumn,proto3" json:"outbound_bytes_per_second_column,omitempty"`
	TotalRequestCountColumn      string `protobuf:"bytes,12,opt,name=total_request_count_column,json=totalRequestCountColumn,proto3" json:"total_request_count_column,omitempty"`
}

func (m *RequestGraph) Reset()      { *m = RequestGraph{} }
func (*RequestGraph) ProtoMessage() {}
func (*RequestGraph) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{13}
}
func (m *RequestGraph) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *RequestGraph) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_RequestGraph.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *RequestGraph) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RequestGraph.Merge(m, src)
}
func (m *RequestGraph) XXX_Size() int {
	return m.Size()
}
func (m *RequestGraph) XXX_DiscardUnknown() {
	xxx_messageInfo_RequestGraph.DiscardUnknown(m)
}

var xxx_messageInfo_RequestGraph proto.InternalMessageInfo

func (m *RequestGraph) GetRequestorPodColumn() string {
	if m != nil {
		return m.RequestorPodColumn
	}
	return ""
}

func (m *RequestGraph) GetResponderPodColumn() string {
	if m != nil {
		return m.ResponderPodColumn
	}
	return ""
}

func (m *RequestGraph) GetRequestorServiceColumn() string {
	if m != nil {
		return m.RequestorServiceColumn
	}
	return ""
}

func (m *RequestGraph) GetResponderServiceColumn() string {
	if m != nil {
		return m.ResponderServiceColumn
	}
	return ""
}

func (m *RequestGraph) GetRequestorIPColumn() string {
	if m != nil {
		return m.RequestorIPColumn
	}
	return ""
}

func (m *RequestGraph) GetResponderIPColumn() string {
	if m != nil {
		return m.ResponderIPColumn
	}
	return ""
}

func (m *RequestGraph) GetP50Column() string {
	if m != nil {
		return m.P50Column
	}
	return ""
}

func (m *RequestGraph) GetP90Column() string {
	if m != nil {
		return m.P90Column
	}
	return ""
}

func (m *RequestGraph) GetP99Column() string {
	if m != nil {
		return m.P99Column
	}
	return ""
}

func (m *RequestGraph) GetErrorRateColumn() string {
	if m != nil {
		return m.ErrorRateColumn
	}
	return ""
}

func (m *RequestGraph) GetRequestsPerSecondColumn() string {
	if m != nil {
		return m.RequestsPerSecondColumn
	}
	return ""
}

func (m *RequestGraph) GetInboundBytesPerSecondColumn() string {
	if m != nil {
		return m.InboundBytesPerSecondColumn
	}
	return ""
}

func (m *RequestGraph) GetOutboundBytesPerSecondColumn() string {
	if m != nil {
		return m.OutboundBytesPerSecondColumn
	}
	return ""
}

func (m *RequestGraph) GetTotalRequestCountColumn() string {
	if m != nil {
		return m.TotalRequestCountColumn
	}
	return ""
}

type StackTraceFlameGraph struct {
	StacktraceColumn string `protobuf:"bytes,1,opt,name=stacktrace_column,json=stacktraceColumn,proto3" json:"stacktrace_column,omitempty"`
	CountColumn      string `protobuf:"bytes,2,opt,name=count_column,json=countColumn,proto3" json:"count_column,omitempty"`
	PercentageColumn string `protobuf:"bytes,3,opt,name=percentage_column,json=percentageColumn,proto3" json:"percentage_column,omitempty"`
	NamespaceColumn  string `protobuf:"bytes,4,opt,name=namespace_column,json=namespaceColumn,proto3" json:"namespace_column,omitempty"`
	PodColumn        string `protobuf:"bytes,5,opt,name=pod_column,json=podColumn,proto3" json:"pod_column,omitempty"`
	ContainerColumn  string `protobuf:"bytes,6,opt,name=container_column,json=containerColumn,proto3" json:"container_column,omitempty"`
	PidColumn        string `protobuf:"bytes,7,opt,name=pid_column,json=pidColumn,proto3" json:"pid_column,omitempty"`
	NodeColumn       string `protobuf:"bytes,8,opt,name=node_column,json=nodeColumn,proto3" json:"node_column,omitempty"`
	PercentageLabel  string `protobuf:"bytes,9,opt,name=percentage_label,json=percentageLabel,proto3" json:"percentage_label,omitempty"`
}

func (m *StackTraceFlameGraph) Reset()      { *m = StackTraceFlameGraph{} }
func (*StackTraceFlameGraph) ProtoMessage() {}
func (*StackTraceFlameGraph) Descriptor() ([]byte, []int) {
	return fileDescriptor_c1b4dce3e9f2d6af, []int{14}
}
func (m *StackTraceFlameGraph) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *StackTraceFlameGraph) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_StackTraceFlameGraph.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *StackTraceFlameGraph) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StackTraceFlameGraph.Merge(m, src)
}
func (m *StackTraceFlameGraph) XXX_Size() int {
	return m.Size()
}
func (m *StackTraceFlameGraph) XXX_DiscardUnknown() {
	xxx_messageInfo_StackTraceFlameGraph.DiscardUnknown(m)
}

var xxx_messageInfo_StackTraceFlameGraph proto.InternalMessageInfo

func (m *StackTraceFlameGraph) GetStacktraceColumn() string {
	if m != nil {
		return m.StacktraceColumn
	}
	return ""
}

func (m *StackTraceFlameGraph) GetCountColumn() string {
	if m != nil {
		return m.CountColumn
	}
	return ""
}

func (m *StackTraceFlameGraph) GetPercentageColumn() string {
	if m != nil {
		return m.PercentageColumn
	}
	return ""
}

func (m *StackTraceFlameGraph) GetNamespaceColumn() string {
	if m != nil {
		return m.NamespaceColumn
	}
	return ""
}

func (m *StackTraceFlameGraph) GetPodColumn() string {
	if m != nil {
		return m.PodColumn
	}
	return ""
}

func (m *StackTraceFlameGraph) GetContainerColumn() string {
	if m != nil {
		return m.ContainerColumn
	}
	return ""
}

func (m *StackTraceFlameGraph) GetPidColumn() string {
	if m != nil {
		return m.PidColumn
	}
	return ""
}

func (m *StackTraceFlameGraph) GetNodeColumn() string {
	if m != nil {
		return m.NodeColumn
	}
	return ""
}

func (m *StackTraceFlameGraph) GetPercentageLabel() string {
	if m != nil {
		return m.PercentageLabel
	}
	return ""
}

func init() {
	proto.RegisterEnum("px.vispb.PXType", PXType_name, PXType_value)
	proto.RegisterEnum("px.vispb.TimeseriesChart_Timeseries_Mode", TimeseriesChart_Timeseries_Mode_name, TimeseriesChart_Timeseries_Mode_value)
	proto.RegisterType((*Vis)(nil), "px.vispb.Vis")
	proto.RegisterType((*Vis_Variable)(nil), "px.vispb.Vis.Variable")
	proto.RegisterType((*Vis_GlobalFunc)(nil), "px.vispb.Vis.GlobalFunc")
	proto.RegisterType((*Widget)(nil), "px.vispb.Widget")
	proto.RegisterType((*Widget_Position)(nil), "px.vispb.Widget.Position")
	proto.RegisterType((*Widget_Func)(nil), "px.vispb.Widget.Func")
	proto.RegisterType((*Widget_Func_FuncArg)(nil), "px.vispb.Widget.Func.FuncArg")
	proto.RegisterType((*Axis)(nil), "px.vispb.Axis")
	proto.RegisterType((*BarChart)(nil), "px.vispb.BarChart")
	proto.RegisterType((*BarChart_Bar)(nil), "px.vispb.BarChart.Bar")
	proto.RegisterType((*PieChart)(nil), "px.vispb.PieChart")
	proto.RegisterType((*HistogramChart)(nil), "px.vispb.HistogramChart")
	proto.RegisterType((*HistogramChart_Histogram)(nil), "px.vispb.HistogramChart.Histogram")
	proto.RegisterType((*GaugeChart)(nil), "px.vispb.GaugeChart")
	proto.RegisterType((*TimeseriesChart)(nil), "px.vispb.TimeseriesChart")
	proto.RegisterType((*TimeseriesChart_Timeseries)(nil), "px.vispb.TimeseriesChart.Timeseries")
	proto.RegisterType((*StatChart)(nil), "px.vispb.StatChart")
	proto.RegisterType((*StatChart_Stat)(nil), "px.vispb.StatChart.Stat")
	proto.RegisterType((*TextChart)(nil), "px.vispb.TextChart")
	proto.RegisterType((*VegaChart)(nil), "px.vispb.VegaChart")
	proto.RegisterType((*Table)(nil), "px.vispb.Table")
	proto.RegisterType((*Graph)(nil), "px.vispb.Graph")
	proto.RegisterType((*Graph_AdjacencyList)(nil), "px.vispb.Graph.AdjacencyList")
	proto.RegisterType((*Graph_EdgeThresholds)(nil), "px.vispb.Graph.EdgeThresholds")
	proto.RegisterType((*RequestGraph)(nil), "px.vispb.RequestGraph")
	proto.RegisterType((*StackTraceFlameGraph)(nil), "px.vispb.StackTraceFlameGraph")
}

func init() { proto.RegisterFile("src/api/proto/vispb/vis.proto", fileDescriptor_c1b4dce3e9f2d6af) }

var fileDescriptor_c1b4dce3e9f2d6af = []byte{
	// 1943 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x57, 0x4b, 0x8f, 0x1b, 0x59,
	0x15, 0x76, 0xf9, 0xd1, 0xb6, 0x8f, 0x5f, 0x95, 0x4b, 0xc8, 0x38, 0x9e, 0xc4, 0xe9, 0x31, 0x13,
	0x94, 0x64, 0x82, 0x3b, 0x34, 0x13, 0x26, 0x51, 0x84, 0x84, 0xdd, 0xed, 0x7e, 0x88, 0x8e, 0x6d,
	0x95, 0x4d, 0xa7, 0x85, 0x90, 0x4a, 0xe5, 0xaa, 0xdb, 0xe5, 0x02, 0xbb, 0x6e, 0x51, 0x75, 0xdd,
	0xdd, 0x66, 0x35, 0x3b, 0xb6, 0x2c, 0x59, 0xb3, 0x42, 0x42, 0xfc, 0x0f, 0x84, 0x40, 0xca, 0xec,
	0x86, 0x1d, 0xe9, 0x6c, 0x86, 0x87, 0xc4, 0x48, 0xf3, 0x07, 0xd0, 0x7d, 0xd4, 0xc3, 0x8e, 0x35,
	0x62, 0x35, 0x9b, 0xee, 0x3a, 0xe7, 0xfb, 0xce, 0xf3, 0x9e, 0xfb, 0x30, 0xdc, 0x0d, 0x7c, 0x73,
	0xc7, 0xf0, 0x9c, 0x1d, 0xcf, 0x27, 0x94, 0xec, 0x5c, 0x38, 0x81, 0x37, 0x61, 0x7f, 0xdb, 0x5c,
	0x46, 0x05, 0xef, 0xaa, 0xcd, 0x75, 0x8d, 0xdb, 0x36, 0x21, 0xf6, 0x0c, 0x0b, 0xde, 0x64, 0x71,
	0xbe, 0x63, 0xb8, 0x4b, 0x41, 0x6a, 0x34, 0xd7, 0xa1, 0x4b, 0xdf, 0xf0, 0x3c, 0xec, 0x4b, 0x27,
	0x8d, 0xef, 0xd9, 0x0e, 0x9d, 0x2e, 0x26, 0x6d, 0x93, 0xcc, 0x77, 0x6c, 0x62, 0x93, 0x98, 0xc8,
	0x24, 0x11, 0x98, 0x7d, 0x09, 0x7a, 0xeb, 0x6f, 0x19, 0xc8, 0x9c, 0x3a, 0x01, 0xfa, 0x18, 0x8a,
	0x17, 0x86, 0xef, 0x18, 0x93, 0x19, 0x0e, 0xea, 0xca, 0x76, 0xe6, 0x41, 0x69, 0xf7, 0x56, 0x3b,
	0xcc, 0xa7, 0x7d, 0xea, 0x04, 0xed, 0x53, 0x09, 0x6b, 0x31, 0x11, 0x3d, 0x82, 0xfc, 0xa5, 0x63,
	0xd9, 0x98, 0x06, 0xf5, 0x34, 0xb7, 0x51, 0x63, 0x9b, 0x57, 0x1c, 0xd0, 0x42, 0x02, 0x7a, 0x01,
	0x65, 0x7b, 0x46, 0x26, 0xc6, 0x4c, 0x3f, 0x5f, 0xb8, 0x66, 0x50, 0xcf, 0x70, 0x83, 0xfa, 0x6a,
	0x90, 0x43, 0xce, 0x38, 0x58, 0xb8, 0xa6, 0x56, 0xb2, 0xa3, 0xef, 0xa0, 0xf1, 0x57, 0x05, 0x0a,
	0x61, 0x02, 0x08, 0x41, 0xd6, 0x35, 0xe6, 0xb8, 0xae, 0x6c, 0x2b, 0x0f, 0x8a, 0x1a, 0xff, 0x46,
	0x1f, 0x42, 0x96, 0x2e, 0x3d, 0x5c, 0x4f, 0x6f, 0x2b, 0x0f, 0xaa, 0xc9, 0x34, 0x86, 0x67, 0xe3,
	0xa5, 0x87, 0x35, 0x8e, 0xa2, 0x0e, 0x54, 0x2c, 0x7c, 0x6e, 0x2c, 0x66, 0x54, 0xbf, 0x30, 0x66,
	0x0b, 0x5c, 0xcf, 0x6c, 0x2b, 0x0f, 0x4a, 0xbb, 0x77, 0xda, 0xa2, 0xa9, 0xed, 0xb0, 0x57, 0xed,
	0x11, 0xf5, 0x1d, 0xd7, 0x3e, 0x65, 0x1c, 0xad, 0x2c, 0x4d, 0xb8, 0x84, 0xb6, 0xa1, 0x64, 0xe1,
	0xc0, 0xf4, 0x1d, 0x8f, 0x3a, 0xc4, 0xad, 0x67, 0x79, 0x0e, 0x49, 0x15, 0xfa, 0x00, 0xca, 0x17,
	0xc6, 0xcc, 0xb1, 0x44, 0x88, 0xa0, 0x9e, 0xdb, 0xce, 0x30, 0x0a, 0xd7, 0x71, 0x1f, 0x41, 0xe3,
	0x0c, 0x20, 0xae, 0x14, 0xdd, 0x83, 0x12, 0x59, 0x50, 0x6f, 0x41, 0xf5, 0x44, 0x59, 0x20, 0x54,
	0x7d, 0x56, 0xdc, 0x43, 0xc8, 0xb2, 0x9e, 0xf1, 0xe2, 0x4a, 0xbb, 0xdf, 0x5e, 0xef, 0x71, 0x9b,
	0xf7, 0x8b, 0x53, 0x5a, 0x5f, 0x65, 0x60, 0x4b, 0x68, 0x37, 0xb6, 0xe9, 0x29, 0x14, 0x3c, 0x12,
	0x38, 0x3c, 0x75, 0xe1, 0xed, 0xf6, 0x3b, 0xde, 0x86, 0x92, 0xa0, 0x45, 0x54, 0xf4, 0x91, 0x4c,
	0x20, 0xf3, 0x35, 0x09, 0x1c, 0xa5, 0x44, 0x0a, 0xe8, 0x13, 0x78, 0x2f, 0xb1, 0xd0, 0x7a, 0xb2,
	0xb4, 0x1c, 0x4b, 0xe5, 0x28, 0xa5, 0xdd, 0x8c, 0xd7, 0x76, 0x10, 0x97, 0xf9, 0x09, 0x94, 0x2d,
	0x27, 0xf0, 0x66, 0xc6, 0x52, 0x0f, 0x3c, 0x6c, 0xf2, 0xde, 0x96, 0x76, 0x6f, 0xbe, 0xb3, 0x38,
	0x1d, 0x77, 0xa9, 0x95, 0x24, 0x73, 0xe4, 0x61, 0xb3, 0xd1, 0x85, 0x42, 0x98, 0x34, 0x2a, 0x83,
	0x72, 0xc5, 0x4b, 0xce, 0x69, 0xca, 0x15, 0x93, 0x96, 0xbc, 0xd0, 0x9c, 0xa6, 0x2c, 0x99, 0x74,
	0xc9, 0x6b, 0xc8, 0x69, 0xca, 0x25, 0x93, 0xa6, 0x3c, 0x46, 0x4e, 0x53, 0xa6, 0x8d, 0x3f, 0x2a,
	0x90, 0xe5, 0xab, 0xb1, 0xa9, 0x6d, 0xdf, 0x87, 0xac, 0xe1, 0xdb, 0xe1, 0x90, 0xdf, 0xdd, 0x58,
	0x3f, 0xff, 0xd3, 0xf1, 0x6d, 0x8d, 0x53, 0x1b, 0x3f, 0x87, 0xbc, 0x54, 0x6c, 0xf4, 0x78, 0x0b,
	0x72, 0x62, 0x02, 0xd3, 0xb2, 0x25, 0x42, 0x44, 0x77, 0xa0, 0x10, 0x6e, 0x2f, 0x9e, 0x29, 0x83,
	0x22, 0x4d, 0x37, 0x0f, 0x39, 0xc7, 0xf5, 0x16, 0xb4, 0x5b, 0x81, 0x92, 0x68, 0xae, 0xaf, 0xfb,
	0xf8, 0xbc, 0x75, 0x07, 0xb2, 0x9d, 0x2b, 0x27, 0x40, 0x37, 0x21, 0x37, 0x33, 0x26, 0x78, 0x26,
	0x43, 0x09, 0xa1, 0xf5, 0xfb, 0x34, 0x14, 0xba, 0x86, 0xbf, 0x37, 0x35, 0x7c, 0x8a, 0x1e, 0x40,
	0x66, 0x62, 0xf8, 0x9c, 0xb0, 0xb2, 0xc5, 0x43, 0x02, 0xfb, 0xd0, 0x18, 0x85, 0x39, 0xa3, 0x0e,
	0x9d, 0xc9, 0x14, 0x35, 0x21, 0xa0, 0xfb, 0xb0, 0x75, 0xa5, 0x1b, 0x57, 0x4e, 0x20, 0x87, 0xa1,
	0x1a, 0xbb, 0x60, 0x29, 0x68, 0xb9, 0x2b, 0x9e, 0xc9, 0x7d, 0xd8, 0x5a, 0x0a, 0x5a, 0x76, 0x33,
	0x6d, 0xc9, 0xfe, 0x35, 0x7e, 0xa3, 0x40, 0xa6, 0x2b, 0x62, 0x89, 0x76, 0xc8, 0xc4, 0x45, 0x33,
	0xa2, 0x72, 0xd2, 0x89, 0x72, 0xd0, 0x6d, 0x28, 0x04, 0xd4, 0x30, 0x7f, 0xa9, 0x4f, 0x96, 0xa2,
	0x45, 0x5a, 0x9e, 0xcb, 0xdd, 0x25, 0x83, 0x6c, 0x9f, 0x2c, 0x3c, 0x06, 0x89, 0x9d, 0x99, 0xe7,
	0x72, 0x77, 0x89, 0x9a, 0x00, 0x53, 0xe2, 0x3b, 0xbf, 0x26, 0x2e, 0x35, 0x66, 0x7c, 0x10, 0x0b,
	0x5a, 0x42, 0xd3, 0x3a, 0x81, 0xc2, 0xd0, 0xc1, 0xa2, 0x47, 0x1b, 0xdb, 0x18, 0xe7, 0x98, 0x5e,
	0xcb, 0x51, 0x74, 0x29, 0x93, 0xe8, 0x52, 0xeb, 0xb3, 0x34, 0x54, 0x8f, 0x9c, 0x80, 0x12, 0xdb,
	0x37, 0xe6, 0xc2, 0xe9, 0x8f, 0xa1, 0x38, 0x0d, 0x35, 0xb2, 0xfd, 0xad, 0xb8, 0x29, 0xab, 0xe4,
	0x58, 0xd4, 0x62, 0xa3, 0x6f, 0x64, 0x41, 0x7e, 0xa7, 0x40, 0xf1, 0x28, 0x19, 0x71, 0xc3, 0xb2,
	0xd4, 0x21, 0x3f, 0x37, 0xae, 0x26, 0x8e, 0x1b, 0xf0, 0x4c, 0x32, 0x5a, 0x28, 0x72, 0xc4, 0x71,
	0x03, 0x8a, 0x3d, 0x9e, 0x8c, 0xa2, 0x85, 0xe2, 0x5a, 0xfb, 0xb3, 0xeb, 0xed, 0x67, 0x87, 0xa6,
	0xe7, 0xe3, 0x89, 0xe3, 0xea, 0x26, 0x59, 0xb8, 0x54, 0x9c, 0x14, 0x5a, 0x49, 0xe8, 0xf6, 0x98,
	0xaa, 0xf5, 0x0c, 0xe0, 0xd0, 0x58, 0xd8, 0xf1, 0x1a, 0x6d, 0x9e, 0x98, 0x77, 0x5b, 0xd4, 0xfa,
	0x53, 0x06, 0x6a, 0x63, 0x67, 0x8e, 0x03, 0xec, 0x3b, 0x38, 0x10, 0xf6, 0xfb, 0x00, 0x34, 0x52,
	0xc9, 0x1b, 0xef, 0xc3, 0xb8, 0x27, 0x6b, 0xf4, 0x84, 0xac, 0x25, 0xec, 0xbe, 0x91, 0x25, 0xf9,
	0xaf, 0x02, 0x30, 0x5e, 0x09, 0xb9, 0xa1, 0xf0, 0x5b, 0xb0, 0x25, 0x4b, 0x11, 0x99, 0x48, 0x09,
	0x7d, 0x17, 0x6a, 0xe1, 0x66, 0xd1, 0x25, 0x21, 0xc3, 0x9b, 0x5f, 0x91, 0x7b, 0x66, 0x24, 0x78,
	0x3f, 0x82, 0xec, 0x9c, 0x58, 0x98, 0x67, 0x52, 0xdd, 0x7d, 0xf8, 0xff, 0x34, 0xa2, 0xfd, 0x92,
	0x58, 0x58, 0xe3, 0x66, 0xad, 0x13, 0xc8, 0x32, 0x09, 0xa9, 0x50, 0x7e, 0x39, 0xd8, 0xef, 0xe9,
	0x3f, 0xed, 0xff, 0xa4, 0x3f, 0x78, 0xd5, 0x57, 0x53, 0xa8, 0x02, 0x45, 0xae, 0x39, 0x39, 0xee,
	0xf7, 0xd4, 0x34, 0xaa, 0x02, 0x70, 0x71, 0x38, 0x38, 0xee, 0x8f, 0xd5, 0x4c, 0x04, 0x77, 0xb4,
	0x5e, 0x47, 0xcd, 0xb6, 0xb2, 0x05, 0x45, 0x55, 0x5a, 0x73, 0x28, 0x8e, 0xa8, 0x41, 0xc5, 0x42,
	0x3d, 0x86, 0x6c, 0x40, 0x0d, 0x2a, 0xb7, 0x4c, 0xe2, 0xbd, 0x10, 0x51, 0xf8, 0x97, 0xc6, 0x59,
	0x9b, 0x17, 0xa4, 0x71, 0x07, 0xb2, 0x23, 0x89, 0xbe, 0xdb, 0xbb, 0xd6, 0x3d, 0x28, 0x8e, 0xf1,
	0x95, 0x0c, 0x87, 0x20, 0x3b, 0x21, 0xd6, 0x32, 0x3c, 0xac, 0xd9, 0x37, 0x23, 0x9c, 0x62, 0xdb,
	0x88, 0x08, 0xfc, 0x76, 0x92, 0x04, 0xf6, 0xdd, 0x7a, 0x0c, 0xb9, 0x31, 0x7f, 0x9a, 0x7c, 0x07,
	0x2a, 0xf6, 0x82, 0x52, 0xec, 0xeb, 0x26, 0x99, 0x2d, 0xe6, 0xae, 0x64, 0x95, 0x85, 0x72, 0x8f,
	0xeb, 0x5a, 0x9f, 0xe6, 0x20, 0x77, 0xe8, 0x1b, 0xde, 0x14, 0xdd, 0x03, 0xb0, 0x08, 0x5d, 0xe1,
	0x1e, 0xa5, 0xb4, 0xa2, 0x45, 0xa8, 0xa0, 0xa2, 0x03, 0xa8, 0x1a, 0xd6, 0x2f, 0x0c, 0x13, 0xbb,
	0xe6, 0x52, 0x9f, 0x39, 0x01, 0x95, 0xb7, 0x76, 0xe2, 0x0a, 0xe2, 0x9e, 0xda, 0x9d, 0x90, 0x75,
	0xe2, 0x04, 0xf4, 0x28, 0xa5, 0x55, 0x8c, 0xa4, 0x02, 0x3d, 0x06, 0x84, 0x2d, 0x1b, 0xeb, 0x97,
	0xd8, 0xb1, 0xa7, 0x51, 0x40, 0x71, 0x64, 0xa9, 0x0c, 0x79, 0xc5, 0x01, 0x19, 0xf5, 0x31, 0x20,
	0x97, 0x58, 0xeb, 0x6c, 0x71, 0xa0, 0xaa, 0x0c, 0x59, 0x61, 0x3f, 0x82, 0x1b, 0xdc, 0xb7, 0x49,
	0x66, 0x24, 0xaa, 0x5b, 0xec, 0xdf, 0x1a, 0x03, 0xf6, 0x98, 0x5e, 0x72, 0x0f, 0x81, 0xab, 0x74,
	0x3a, 0xf5, 0x71, 0x30, 0x25, 0x33, 0x2b, 0xa8, 0x6f, 0xf1, 0x82, 0x9a, 0xeb, 0x05, 0xf5, 0x2c,
	0x1b, 0x8f, 0x23, 0x96, 0x56, 0xc5, 0x2b, 0x32, 0x9b, 0x6b, 0xee, 0x68, 0x4a, 0x2e, 0xb0, 0xaf,
	0x3b, 0xee, 0x39, 0xa9, 0xe7, 0xf9, 0x3b, 0xab, 0xc2, 0xd4, 0x47, 0x4c, 0x7b, 0xec, 0x9e, 0x13,
	0xf6, 0xb6, 0xe2, 0xbc, 0x19, 0x76, 0x6d, 0x3a, 0xad, 0x17, 0xf8, 0x79, 0x05, 0x4c, 0x75, 0xc2,
	0x35, 0xe8, 0x19, 0xd4, 0xb1, 0xcb, 0xd6, 0x4e, 0x0f, 0x5f, 0x86, 0x53, 0x07, 0xfb, 0x86, 0x6f,
	0x4e, 0x97, 0xf5, 0x22, 0xdf, 0x29, 0xb7, 0x04, 0xbe, 0x2f, 0xe0, 0xa3, 0x10, 0x6d, 0xbc, 0x84,
	0xca, 0x4a, 0xd7, 0x59, 0xac, 0x73, 0x9f, 0xcc, 0x57, 0x97, 0x1e, 0x98, 0x4a, 0x56, 0xff, 0x3e,
	0x14, 0x29, 0x09, 0x61, 0x31, 0xa0, 0x05, 0x4a, 0x04, 0xd8, 0x98, 0x40, 0x75, 0xb5, 0x66, 0xf4,
	0x10, 0xd4, 0x39, 0xb6, 0x9c, 0xc5, 0x3c, 0x6e, 0x17, 0x77, 0x9a, 0xd1, 0x6a, 0x42, 0x1f, 0x71,
	0xd1, 0x7d, 0xa8, 0x4e, 0x1d, 0x7b, 0x9a, 0x20, 0x8a, 0x93, 0xb9, 0xc2, 0xb4, 0x11, 0x2d, 0x7a,
	0x3f, 0xb4, 0xfe, 0x9e, 0x83, 0xb2, 0x86, 0x7f, 0xb5, 0xc0, 0x01, 0x15, 0x93, 0xf8, 0x04, 0x6e,
	0xfa, 0x42, 0x26, 0xbe, 0xee, 0x11, 0x6b, 0xb5, 0x08, 0x14, 0x61, 0x43, 0x62, 0xc9, 0x62, 0xb8,
	0x45, 0xe0, 0x11, 0xd7, 0xc2, 0x2b, 0x16, 0xe9, 0xd0, 0x42, 0x62, 0xb1, 0xc5, 0x33, 0xa8, 0xc7,
	0x31, 0x02, 0xec, 0x5f, 0x38, 0x26, 0x5e, 0x1d, 0xc5, 0x5b, 0x11, 0x3e, 0x12, 0x70, 0xd2, 0x32,
	0x8c, 0xb5, 0x66, 0x99, 0x0d, 0x2d, 0x25, 0xbe, 0x6a, 0xb9, 0x93, 0xac, 0xcb, 0xd1, 0xbd, 0xd0,
	0xaa, 0xc2, 0xad, 0x6e, 0x44, 0xd8, 0xf1, 0x30, 0x69, 0x10, 0x86, 0x4a, 0x18, 0x54, 0x43, 0x03,
	0x89, 0x45, 0x06, 0x77, 0x01, 0xbc, 0xa7, 0x4f, 0x56, 0xe7, 0xbe, 0xe8, 0x3d, 0x7d, 0x92, 0x80,
	0x9f, 0x47, 0xf0, 0x96, 0x84, 0x9f, 0xaf, 0xc0, 0xcf, 0x43, 0x38, 0x1f, 0xc2, 0xcf, 0x13, 0x7b,
	0xcb, 0xf7, 0xd9, 0x2b, 0xcf, 0xa0, 0x51, 0xc5, 0x05, 0xb9, 0xb7, 0x18, 0xa0, 0x19, 0x34, 0x2c,
	0xf5, 0x05, 0x34, 0x64, 0x39, 0x81, 0xee, 0xf1, 0x3e, 0x99, 0xc4, 0x8d, 0x96, 0xa5, 0xc8, 0x8d,
	0xde, 0x0b, 0x19, 0x43, 0xd6, 0x28, 0x86, 0x4b, 0xe3, 0x7d, 0xb8, 0xe7, 0xb8, 0x13, 0xb2, 0x70,
	0x2d, 0x7d, 0xb2, 0xa4, 0x78, 0x93, 0x07, 0xe0, 0x1e, 0xde, 0x97, 0xb4, 0x2e, 0x63, 0xad, 0x7b,
	0x39, 0x80, 0x6d, 0xb2, 0xa0, 0x5f, 0xef, 0xa6, 0xc4, 0xdd, 0xdc, 0x09, 0x79, 0x1b, 0xfd, 0xbc,
	0x80, 0x06, 0x25, 0xd4, 0x98, 0xe9, 0x32, 0x5d, 0xf1, 0x28, 0x08, 0x3d, 0x94, 0x45, 0x29, 0x9c,
	0x21, 0x87, 0x98, 0xbf, 0x10, 0xe4, 0xf1, 0xfa, 0x55, 0x1a, 0x6e, 0x8e, 0xd8, 0xe5, 0x36, 0xf6,
	0x0d, 0x13, 0x1f, 0xcc, 0x8c, 0x39, 0x16, 0x33, 0xfe, 0x11, 0xdc, 0xe0, 0x97, 0x1e, 0x65, 0xfa,
	0xd5, 0x01, 0x57, 0x63, 0x40, 0xa6, 0xf0, 0x01, 0x94, 0x57, 0x82, 0x8a, 0xb1, 0x2e, 0x99, 0x71,
	0x20, 0xe6, 0xcf, 0xc3, 0xbe, 0x89, 0x5d, 0x6a, 0xd8, 0x6b, 0x83, 0xac, 0xc6, 0x80, 0x24, 0x3f,
	0x04, 0x95, 0x3d, 0xfc, 0x03, 0xcf, 0x58, 0x1f, 0xdd, 0x5a, 0xa4, 0x4f, 0xcc, 0x44, 0xbc, 0x9f,
	0xc2, 0x89, 0x8a, 0xb6, 0xd1, 0x43, 0x50, 0x4d, 0xf6, 0x68, 0x72, 0xdc, 0xf8, 0x9a, 0x11, 0x73,
	0x55, 0x8b, 0xf4, 0x09, 0x4f, 0x8e, 0xb5, 0x3e, 0x5d, 0x4e, 0xe8, 0xe9, 0x1e, 0x94, 0xf8, 0x39,
	0xbf, 0x32, 0x57, 0xc0, 0x54, 0x71, 0xa8, 0x44, 0x85, 0xe2, 0x4d, 0x2c, 0x06, 0xa9, 0x16, 0xeb,
	0x4f, 0x98, 0xfa, 0xd1, 0x5f, 0x14, 0xd8, 0x12, 0xbf, 0xb5, 0xd9, 0x1d, 0x3f, 0x3c, 0x4b, 0x3c,
	0x01, 0x84, 0xdc, 0x1d, 0x0c, 0x4e, 0x7a, 0x9d, 0xbe, 0xaa, 0xa0, 0x32, 0x14, 0x86, 0x67, 0xfa,
	0x71, 0x7f, 0xfc, 0xc3, 0x8f, 0xc5, 0x8b, 0x60, 0x78, 0xa6, 0x1f, 0x9c, 0x0c, 0x3a, 0x4c, 0xe6,
	0x2f, 0x82, 0xe1, 0x99, 0x3e, 0x1a, 0x6b, 0xc7, 0xfd, 0x43, 0x35, 0x8b, 0x6a, 0x1c, 0x1e, 0xf5,
	0xb4, 0xd3, 0xe3, 0xbd, 0x9e, 0xfa, 0x45, 0x1e, 0x95, 0x58, 0x1c, 0x7d, 0x38, 0xd8, 0x57, 0xff,
	0x99, 0x47, 0x37, 0xa0, 0x3c, 0x3c, 0xd3, 0xf7, 0x06, 0xfd, 0x71, 0xe7, 0xb8, 0xdf, 0xd3, 0xd4,
	0x7f, 0x85, 0xaa, 0x7e, 0xe7, 0x65, 0x6f, 0x34, 0xec, 0xec, 0xf5, 0xd4, 0x7f, 0xe7, 0x51, 0x19,
	0xf2, 0x4c, 0x35, 0xd8, 0xef, 0xa9, 0xff, 0x09, 0xa5, 0x93, 0xe3, 0xd1, 0x58, 0x7d, 0x5d, 0x43,
	0xdf, 0x82, 0x6a, 0x14, 0x4e, 0x28, 0x3f, 0xab, 0x75, 0x5f, 0xbc, 0x7e, 0xd3, 0x4c, 0x7d, 0xfe,
	0xa6, 0x99, 0xfa, 0xf2, 0x4d, 0x53, 0xf9, 0xf4, 0xba, 0xa9, 0xfc, 0xe1, 0xba, 0xa9, 0xfc, 0xf9,
	0xba, 0xa9, 0xbc, 0xbe, 0x6e, 0x2a, 0xff, 0xb8, 0x6e, 0x2a, 0x5f, 0x5c, 0x37, 0x53, 0x5f, 0x5e,
	0x37, 0x95, 0xdf, 0xbe, 0x6d, 0xa6, 0x5e, 0xbf, 0x6d, 0xa6, 0x3e, 0x7f, 0xdb, 0x4c, 0xfd, 0x2c,
	0xc7, 0xef, 0xaf, 0xc9, 0x16, 0xff, 0xa1, 0xfa, 0x83, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0x0e,
	0x3d, 0x01, 0xc0, 0xee, 0x11, 0x00, 0x00,
}

func (x PXType) String() string {
	s, ok := PXType_name[int32(x)]
	if ok {
		return s
	}
	return strconv.Itoa(int(x))
}
func (x TimeseriesChart_Timeseries_Mode) String() string {
	s, ok := TimeseriesChart_Timeseries_Mode_name[int32(x)]
	if ok {
		return s
	}
	return strconv.Itoa(int(x))
}
func (this *Vis) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Vis)
	if !ok {
		that2, ok := that.(Vis)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if len(this.Variables) != len(that1.Variables) {
		return false
	}
	for i := range this.Variables {
		if !this.Variables[i].Equal(that1.Variables[i]) {
			return false
		}
	}
	if len(this.Widgets) != len(that1.Widgets) {
		return false
	}
	for i := range this.Widgets {
		if !this.Widgets[i].Equal(that1.Widgets[i]) {
			return false
		}
	}
	if len(this.GlobalFuncs) != len(that1.GlobalFuncs) {
		return false
	}
	for i := range this.GlobalFuncs {
		if !this.GlobalFuncs[i].Equal(that1.GlobalFuncs[i]) {
			return false
		}
	}
	return true
}
func (this *Vis_Variable) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Vis_Variable)
	if !ok {
		that2, ok := that.(Vis_Variable)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Name != that1.Name {
		return false
	}
	if this.Type != that1.Type {
		return false
	}
	if !this.DefaultValue.Equal(that1.DefaultValue) {
		return false
	}
	if this.Description != that1.Description {
		return false
	}
	if len(this.ValidValues) != len(that1.ValidValues) {
		return false
	}
	for i := range this.ValidValues {
		if this.ValidValues[i] != that1.ValidValues[i] {
			return false
		}
	}
	return true
}
func (this *Vis_GlobalFunc) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Vis_GlobalFunc)
	if !ok {
		that2, ok := that.(Vis_GlobalFunc)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.OutputName != that1.OutputName {
		return false
	}
	if !this.Func.Equal(that1.Func) {
		return false
	}
	return true
}
func (this *Widget) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Widget)
	if !ok {
		that2, ok := that.(Widget)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Name != that1.Name {
		return false
	}
	if !this.Position.Equal(that1.Position) {
		return false
	}
	if that1.FuncOrRef == nil {
		if this.FuncOrRef != nil {
			return false
		}
	} else if this.FuncOrRef == nil {
		return false
	} else if !this.FuncOrRef.Equal(that1.FuncOrRef) {
		return false
	}
	if !this.DisplaySpec.Equal(that1.DisplaySpec) {
		return false
	}
	return true
}
func (this *Widget_Func_) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Widget_Func_)
	if !ok {
		that2, ok := that.(Widget_Func_)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if !this.Func.Equal(that1.Func) {
		return false
	}
	return true
}
func (this *Widget_GlobalFuncOutputName) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Widget_GlobalFuncOutputName)
	if !ok {
		that2, ok := that.(Widget_GlobalFuncOutputName)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.GlobalFuncOutputName != that1.GlobalFuncOutputName {
		return false
	}
	return true
}
func (this *Widget_Position) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Widget_Position)
	if !ok {
		that2, ok := that.(Widget_Position)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.X != that1.X {
		return false
	}
	if this.Y != that1.Y {
		return false
	}
	if this.W != that1.W {
		return false
	}
	if this.H != that1.H {
		return false
	}
	return true
}
func (this *Widget_Func) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Widget_Func)
	if !ok {
		that2, ok := that.(Widget_Func)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Name != that1.Name {
		return false
	}
	if len(this.Args) != len(that1.Args) {
		return false
	}
	for i := range this.Args {
		if !this.Args[i].Equal(that1.Args[i]) {
			return false
		}
	}
	return true
}
func (this *Widget_Func_FuncArg) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Widget_Func_FuncArg)
	if !ok {
		that2, ok := that.(Widget_Func_FuncArg)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Name != that1.Name {
		return false
	}
	if that1.Input == nil {
		if this.Input != nil {
			return false
		}
	} else if this.Input == nil {
		return false
	} else if !this.Input.Equal(that1.Input) {
		return false
	}
	return true
}
func (this *Widget_Func_FuncArg_Value) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Widget_Func_FuncArg_Value)
	if !ok {
		that2, ok := that.(Widget_Func_FuncArg_Value)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Value != that1.Value {
		return false
	}
	return true
}
func (this *Widget_Func_FuncArg_Variable) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Widget_Func_FuncArg_Variable)
	if !ok {
		that2, ok := that.(Widget_Func_FuncArg_Variable)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Variable != that1.Variable {
		return false
	}
	return true
}
func (this *Axis) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Axis)
	if !ok {
		that2, ok := that.(Axis)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Label != that1.Label {
		return false
	}
	return true
}
func (this *BarChart) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*BarChart)
	if !ok {
		that2, ok := that.(BarChart)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if !this.Bar.Equal(that1.Bar) {
		return false
	}
	if this.Title != that1.Title {
		return false
	}
	if !this.XAxis.Equal(that1.XAxis) {
		return false
	}
	if !this.YAxis.Equal(that1.YAxis) {
		return false
	}
	return true
}
func (this *BarChart_Bar) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*BarChart_Bar)
	if !ok {
		that2, ok := that.(BarChart_Bar)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Value != that1.Value {
		return false
	}
	if this.Label != that1.Label {
		return false
	}
	if this.StackBy != that1.StackBy {
		return false
	}
	if this.GroupBy != that1.GroupBy {
		return false
	}
	if this.Horizontal != that1.Horizontal {
		return false
	}
	return true
}
func (this *PieChart) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*PieChart)
	if !ok {
		that2, ok := that.(PieChart)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Label != that1.Label {
		return false
	}
	if this.Value != that1.Value {
		return false
	}
	if this.Title != that1.Title {
		return false
	}
	return true
}
func (this *HistogramChart) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*HistogramChart)
	if !ok {
		that2, ok := that.(HistogramChart)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if !this.Histogram.Equal(that1.Histogram) {
		return false
	}
	if this.Title != that1.Title {
		return false
	}
	if !this.XAxis.Equal(that1.XAxis) {
		return false
	}
	if !this.YAxis.Equal(that1.YAxis) {
		return false
	}
	return true
}
func (this *HistogramChart_Histogram) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*HistogramChart_Histogram)
	if !ok {
		that2, ok := that.(HistogramChart_Histogram)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Value != that1.Value {
		return false
	}
	if this.Maxbins != that1.Maxbins {
		return false
	}
	if this.Minstep != that1.Minstep {
		return false
	}
	if this.Horizontal != that1.Horizontal {
		return false
	}
	if this.PrebinCount != that1.PrebinCount {
		return false
	}
	return true
}
func (this *GaugeChart) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*GaugeChart)
	if !ok {
		that2, ok := that.(GaugeChart)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Value != that1.Value {
		return false
	}
	if this.Title != that1.Title {
		return false
	}
	return true
}
func (this *TimeseriesChart) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*TimeseriesChart)
	if !ok {
		that2, ok := that.(TimeseriesChart)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if len(this.Timeseries) != len(that1.Timeseries) {
		return false
	}
	for i := range this.Timeseries {
		if !this.Timeseries[i].Equal(that1.Timeseries[i]) {
			return false
		}
	}
	if this.Title != that1.Title {
		return false
	}
	if !this.XAxis.Equal(that1.XAxis) {
		return false
	}
	if !this.YAxis.Equal(that1.YAxis) {
		return false
	}
	return true
}
func (this *TimeseriesChart_Timeseries) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*TimeseriesChart_Timeseries)
	if !ok {
		that2, ok := that.(TimeseriesChart_Timeseries)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Value != that1.Value {
		return false
	}
	if this.Series != that1.Series {
		return false
	}
	if this.StackBySeries != that1.StackBySeries {
		return false
	}
	if this.Mode != that1.Mode {
		return false
	}
	return true
}
func (this *StatChart) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*StatChart)
	if !ok {
		that2, ok := that.(StatChart)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if !this.Stat.Equal(that1.Stat) {
		return false
	}
	if this.Title != that1.Title {
		return false
	}
	return true
}
func (this *StatChart_Stat) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*StatChart_Stat)
	if !ok {
		that2, ok := that.(StatChart_Stat)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Value != that1.Value {
		return false
	}
	return true
}
func (this *TextChart) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*TextChart)
	if !ok {
		that2, ok := that.(TextChart)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Body != that1.Body {
		return false
	}
	return true
}
func (this *VegaChart) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*VegaChart)
	if !ok {
		that2, ok := that.(VegaChart)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.Spec != that1.Spec {
		return false
	}
	return true
}
func (this *Table) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Table)
	if !ok {
		that2, ok := that.(Table)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.GutterColumn != that1.GutterColumn {
		return false
	}
	return true
}
func (this *Graph) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Graph)
	if !ok {
		that2, ok := that.(Graph)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if that1.Input == nil {
		if this.Input != nil {
			return false
		}
	} else if this.Input == nil {
		return false
	} else if !this.Input.Equal(that1.Input) {
		return false
	}
	if this.EdgeWeightColumn != that1.EdgeWeightColumn {
		return false
	}
	if this.NodeWeightColumn != that1.NodeWeightColumn {
		return false
	}
	if this.EdgeColorColumn != that1.EdgeColorColumn {
		return false
	}
	if !this.EdgeThresholds.Equal(that1.EdgeThresholds) {
		return false
	}
	if len(this.EdgeHoverInfo) != len(that1.EdgeHoverInfo) {
		return false
	}
	for i := range this.EdgeHoverInfo {
		if this.EdgeHoverInfo[i] != that1.EdgeHoverInfo[i] {
			return false
		}
	}
	if this.EdgeLength != that1.EdgeLength {
		return false
	}
	if this.EnableDefaultHierarchy != that1.EnableDefaultHierarchy {
		return false
	}
	return true
}
func (this *Graph_DotColumn) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Graph_DotColumn)
	if !ok {
		that2, ok := that.(Graph_DotColumn)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.DotColumn != that1.DotColumn {
		return false
	}
	return true
}
func (this *Graph_AdjacencyList_) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Graph_AdjacencyList_)
	if !ok {
		that2, ok := that.(Graph_AdjacencyList_)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if !this.AdjacencyList.Equal(that1.AdjacencyList) {
		return false
	}
	return true
}
func (this *Graph_AdjacencyList) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Graph_AdjacencyList)
	if !ok {
		that2, ok := that.(Graph_AdjacencyList)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.FromColumn != that1.FromColumn {
		return false
	}
	if this.ToColumn != that1.ToColumn {
		return false
	}
	return true
}
func (this *Graph_EdgeThresholds) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*Graph_EdgeThresholds)
	if !ok {
		that2, ok := that.(Graph_EdgeThresholds)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.MediumThreshold != that1.MediumThreshold {
		return false
	}
	if this.HighThreshold != that1.HighThreshold {
		return false
	}
	return true
}
func (this *RequestGraph) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*RequestGraph)
	if !ok {
		that2, ok := that.(RequestGraph)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.RequestorPodColumn != that1.RequestorPodColumn {
		return false
	}
	if this.ResponderPodColumn != that1.ResponderPodColumn {
		return false
	}
	if this.RequestorServiceColumn != that1.RequestorServiceColumn {
		return false
	}
	if this.ResponderServiceColumn != that1.ResponderServiceColumn {
		return false
	}
	if this.RequestorIPColumn != that1.RequestorIPColumn {
		return false
	}
	if this.ResponderIPColumn != that1.ResponderIPColumn {
		return false
	}
	if this.P50Column != that1.P50Column {
		return false
	}
	if this.P90Column != that1.P90Column {
		return false
	}
	if this.P99Column != that1.P99Column {
		return false
	}
	if this.ErrorRateColumn != that1.ErrorRateColumn {
		return false
	}
	if this.RequestsPerSecondColumn != that1.RequestsPerSecondColumn {
		return false
	}
	if this.InboundBytesPerSecondColumn != that1.InboundBytesPerSecondColumn {
		return false
	}
	if this.OutboundBytesPerSecondColumn != that1.OutboundBytesPerSecondColumn {
		return false
	}
	if this.TotalRequestCountColumn != that1.TotalRequestCountColumn {
		return false
	}
	return true
}
func (this *StackTraceFlameGraph) Equal(that interface{}) bool {
	if that == nil {
		return this == nil
	}

	that1, ok := that.(*StackTraceFlameGraph)
	if !ok {
		that2, ok := that.(StackTraceFlameGraph)
		if ok {
			that1 = &that2
		} else {
			return false
		}
	}
	if that1 == nil {
		return this == nil
	} else if this == nil {
		return false
	}
	if this.StacktraceColumn != that1.StacktraceColumn {
		return false
	}
	if this.CountColumn != that1.CountColumn {
		return false
	}
	if this.PercentageColumn != that1.PercentageColumn {
		return false
	}
	if this.NamespaceColumn != that1.NamespaceColumn {
		return false
	}
	if this.PodColumn != that1.PodColumn {
		return false
	}
	if this.ContainerColumn != that1.ContainerColumn {
		return false
	}
	if this.PidColumn != that1.PidColumn {
		return false
	}
	if this.NodeColumn != that1.NodeColumn {
		return false
	}
	if this.PercentageLabel != that1.PercentageLabel {
		return false
	}
	return true
}
func (this *Vis) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 7)
	s = append(s, "&vispb.Vis{")
	if this.Variables != nil {
		s = append(s, "Variables: "+fmt.Sprintf("%#v", this.Variables)+",\n")
	}
	if this.Widgets != nil {
		s = append(s, "Widgets: "+fmt.Sprintf("%#v", this.Widgets)+",\n")
	}
	if this.GlobalFuncs != nil {
		s = append(s, "GlobalFuncs: "+fmt.Sprintf("%#v", this.GlobalFuncs)+",\n")
	}
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Vis_Variable) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 9)
	s = append(s, "&vispb.Vis_Variable{")
	s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n")
	s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n")
	if this.DefaultValue != nil {
		s = append(s, "DefaultValue: "+fmt.Sprintf("%#v", this.DefaultValue)+",\n")
	}
	s = append(s, "Description: "+fmt.Sprintf("%#v", this.Description)+",\n")
	s = append(s, "ValidValues: "+fmt.Sprintf("%#v", this.ValidValues)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Vis_GlobalFunc) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 6)
	s = append(s, "&vispb.Vis_GlobalFunc{")
	s = append(s, "OutputName: "+fmt.Sprintf("%#v", this.OutputName)+",\n")
	if this.Func != nil {
		s = append(s, "Func: "+fmt.Sprintf("%#v", this.Func)+",\n")
	}
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Widget) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 9)
	s = append(s, "&vispb.Widget{")
	s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n")
	if this.Position != nil {
		s = append(s, "Position: "+fmt.Sprintf("%#v", this.Position)+",\n")
	}
	if this.FuncOrRef != nil {
		s = append(s, "FuncOrRef: "+fmt.Sprintf("%#v", this.FuncOrRef)+",\n")
	}
	if this.DisplaySpec != nil {
		s = append(s, "DisplaySpec: "+fmt.Sprintf("%#v", this.DisplaySpec)+",\n")
	}
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Widget_Func_) GoString() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&vispb.Widget_Func_{` +
		`Func:` + fmt.Sprintf("%#v", this.Func) + `}`}, ", ")
	return s
}
func (this *Widget_GlobalFuncOutputName) GoString() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&vispb.Widget_GlobalFuncOutputName{` +
		`GlobalFuncOutputName:` + fmt.Sprintf("%#v", this.GlobalFuncOutputName) + `}`}, ", ")
	return s
}
func (this *Widget_Position) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 8)
	s = append(s, "&vispb.Widget_Position{")
	s = append(s, "X: "+fmt.Sprintf("%#v", this.X)+",\n")
	s = append(s, "Y: "+fmt.Sprintf("%#v", this.Y)+",\n")
	s = append(s, "W: "+fmt.Sprintf("%#v", this.W)+",\n")
	s = append(s, "H: "+fmt.Sprintf("%#v", this.H)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Widget_Func) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 6)
	s = append(s, "&vispb.Widget_Func{")
	s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n")
	if this.Args != nil {
		s = append(s, "Args: "+fmt.Sprintf("%#v", this.Args)+",\n")
	}
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Widget_Func_FuncArg) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 7)
	s = append(s, "&vispb.Widget_Func_FuncArg{")
	s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n")
	if this.Input != nil {
		s = append(s, "Input: "+fmt.Sprintf("%#v", this.Input)+",\n")
	}
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Widget_Func_FuncArg_Value) GoString() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&vispb.Widget_Func_FuncArg_Value{` +
		`Value:` + fmt.Sprintf("%#v", this.Value) + `}`}, ", ")
	return s
}
func (this *Widget_Func_FuncArg_Variable) GoString() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&vispb.Widget_Func_FuncArg_Variable{` +
		`Variable:` + fmt.Sprintf("%#v", this.Variable) + `}`}, ", ")
	return s
}
func (this *Axis) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 5)
	s = append(s, "&vispb.Axis{")
	s = append(s, "Label: "+fmt.Sprintf("%#v", this.Label)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *BarChart) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 8)
	s = append(s, "&vispb.BarChart{")
	if this.Bar != nil {
		s = append(s, "Bar: "+fmt.Sprintf("%#v", this.Bar)+",\n")
	}
	s = append(s, "Title: "+fmt.Sprintf("%#v", this.Title)+",\n")
	if this.XAxis != nil {
		s = append(s, "XAxis: "+fmt.Sprintf("%#v", this.XAxis)+",\n")
	}
	if this.YAxis != nil {
		s = append(s, "YAxis: "+fmt.Sprintf("%#v", this.YAxis)+",\n")
	}
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *BarChart_Bar) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 9)
	s = append(s, "&vispb.BarChart_Bar{")
	s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n")
	s = append(s, "Label: "+fmt.Sprintf("%#v", this.Label)+",\n")
	s = append(s, "StackBy: "+fmt.Sprintf("%#v", this.StackBy)+",\n")
	s = append(s, "GroupBy: "+fmt.Sprintf("%#v", this.GroupBy)+",\n")
	s = append(s, "Horizontal: "+fmt.Sprintf("%#v", this.Horizontal)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *PieChart) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 7)
	s = append(s, "&vispb.PieChart{")
	s = append(s, "Label: "+fmt.Sprintf("%#v", this.Label)+",\n")
	s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n")
	s = append(s, "Title: "+fmt.Sprintf("%#v", this.Title)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *HistogramChart) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 8)
	s = append(s, "&vispb.HistogramChart{")
	if this.Histogram != nil {
		s = append(s, "Histogram: "+fmt.Sprintf("%#v", this.Histogram)+",\n")
	}
	s = append(s, "Title: "+fmt.Sprintf("%#v", this.Title)+",\n")
	if this.XAxis != nil {
		s = append(s, "XAxis: "+fmt.Sprintf("%#v", this.XAxis)+",\n")
	}
	if this.YAxis != nil {
		s = append(s, "YAxis: "+fmt.Sprintf("%#v", this.YAxis)+",\n")
	}
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *HistogramChart_Histogram) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 9)
	s = append(s, "&vispb.HistogramChart_Histogram{")
	s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n")
	s = append(s, "Maxbins: "+fmt.Sprintf("%#v", this.Maxbins)+",\n")
	s = append(s, "Minstep: "+fmt.Sprintf("%#v", this.Minstep)+",\n")
	s = append(s, "Horizontal: "+fmt.Sprintf("%#v", this.Horizontal)+",\n")
	s = append(s, "PrebinCount: "+fmt.Sprintf("%#v", this.PrebinCount)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *GaugeChart) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 6)
	s = append(s, "&vispb.GaugeChart{")
	s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n")
	s = append(s, "Title: "+fmt.Sprintf("%#v", this.Title)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *TimeseriesChart) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 8)
	s = append(s, "&vispb.TimeseriesChart{")
	if this.Timeseries != nil {
		s = append(s, "Timeseries: "+fmt.Sprintf("%#v", this.Timeseries)+",\n")
	}
	s = append(s, "Title: "+fmt.Sprintf("%#v", this.Title)+",\n")
	if this.XAxis != nil {
		s = append(s, "XAxis: "+fmt.Sprintf("%#v", this.XAxis)+",\n")
	}
	if this.YAxis != nil {
		s = append(s, "YAxis: "+fmt.Sprintf("%#v", this.YAxis)+",\n")
	}
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *TimeseriesChart_Timeseries) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 8)
	s = append(s, "&vispb.TimeseriesChart_Timeseries{")
	s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n")
	s = append(s, "Series: "+fmt.Sprintf("%#v", this.Series)+",\n")
	s = append(s, "StackBySeries: "+fmt.Sprintf("%#v", this.StackBySeries)+",\n")
	s = append(s, "Mode: "+fmt.Sprintf("%#v", this.Mode)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *StatChart) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 6)
	s = append(s, "&vispb.StatChart{")
	if this.Stat != nil {
		s = append(s, "Stat: "+fmt.Sprintf("%#v", this.Stat)+",\n")
	}
	s = append(s, "Title: "+fmt.Sprintf("%#v", this.Title)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *StatChart_Stat) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 5)
	s = append(s, "&vispb.StatChart_Stat{")
	s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *TextChart) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 5)
	s = append(s, "&vispb.TextChart{")
	s = append(s, "Body: "+fmt.Sprintf("%#v", this.Body)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *VegaChart) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 5)
	s = append(s, "&vispb.VegaChart{")
	s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Table) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 5)
	s = append(s, "&vispb.Table{")
	s = append(s, "GutterColumn: "+fmt.Sprintf("%#v", this.GutterColumn)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Graph) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 13)
	s = append(s, "&vispb.Graph{")
	if this.Input != nil {
		s = append(s, "Input: "+fmt.Sprintf("%#v", this.Input)+",\n")
	}
	s = append(s, "EdgeWeightColumn: "+fmt.Sprintf("%#v", this.EdgeWeightColumn)+",\n")
	s = append(s, "NodeWeightColumn: "+fmt.Sprintf("%#v", this.NodeWeightColumn)+",\n")
	s = append(s, "EdgeColorColumn: "+fmt.Sprintf("%#v", this.EdgeColorColumn)+",\n")
	if this.EdgeThresholds != nil {
		s = append(s, "EdgeThresholds: "+fmt.Sprintf("%#v", this.EdgeThresholds)+",\n")
	}
	s = append(s, "EdgeHoverInfo: "+fmt.Sprintf("%#v", this.EdgeHoverInfo)+",\n")
	s = append(s, "EdgeLength: "+fmt.Sprintf("%#v", this.EdgeLength)+",\n")
	s = append(s, "EnableDefaultHierarchy: "+fmt.Sprintf("%#v", this.EnableDefaultHierarchy)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Graph_DotColumn) GoString() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&vispb.Graph_DotColumn{` +
		`DotColumn:` + fmt.Sprintf("%#v", this.DotColumn) + `}`}, ", ")
	return s
}
func (this *Graph_AdjacencyList_) GoString() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&vispb.Graph_AdjacencyList_{` +
		`AdjacencyList:` + fmt.Sprintf("%#v", this.AdjacencyList) + `}`}, ", ")
	return s
}
func (this *Graph_AdjacencyList) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 6)
	s = append(s, "&vispb.Graph_AdjacencyList{")
	s = append(s, "FromColumn: "+fmt.Sprintf("%#v", this.FromColumn)+",\n")
	s = append(s, "ToColumn: "+fmt.Sprintf("%#v", this.ToColumn)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *Graph_EdgeThresholds) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 6)
	s = append(s, "&vispb.Graph_EdgeThresholds{")
	s = append(s, "MediumThreshold: "+fmt.Sprintf("%#v", this.MediumThreshold)+",\n")
	s = append(s, "HighThreshold: "+fmt.Sprintf("%#v", this.HighThreshold)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *RequestGraph) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 18)
	s = append(s, "&vispb.RequestGraph{")
	s = append(s, "RequestorPodColumn: "+fmt.Sprintf("%#v", this.RequestorPodColumn)+",\n")
	s = append(s, "ResponderPodColumn: "+fmt.Sprintf("%#v", this.ResponderPodColumn)+",\n")
	s = append(s, "RequestorServiceColumn: "+fmt.Sprintf("%#v", this.RequestorServiceColumn)+",\n")
	s = append(s, "ResponderServiceColumn: "+fmt.Sprintf("%#v", this.ResponderServiceColumn)+",\n")
	s = append(s, "RequestorIPColumn: "+fmt.Sprintf("%#v", this.RequestorIPColumn)+",\n")
	s = append(s, "ResponderIPColumn: "+fmt.Sprintf("%#v", this.ResponderIPColumn)+",\n")
	s = append(s, "P50Column: "+fmt.Sprintf("%#v", this.P50Column)+",\n")
	s = append(s, "P90Column: "+fmt.Sprintf("%#v", this.P90Column)+",\n")
	s = append(s, "P99Column: "+fmt.Sprintf("%#v", this.P99Column)+",\n")
	s = append(s, "ErrorRateColumn: "+fmt.Sprintf("%#v", this.ErrorRateColumn)+",\n")
	s = append(s, "RequestsPerSecondColumn: "+fmt.Sprintf("%#v", this.RequestsPerSecondColumn)+",\n")
	s = append(s, "InboundBytesPerSecondColumn: "+fmt.Sprintf("%#v", this.InboundBytesPerSecondColumn)+",\n")
	s = append(s, "OutboundBytesPerSecondColumn: "+fmt.Sprintf("%#v", this.OutboundBytesPerSecondColumn)+",\n")
	s = append(s, "TotalRequestCountColumn: "+fmt.Sprintf("%#v", this.TotalRequestCountColumn)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func (this *StackTraceFlameGraph) GoString() string {
	if this == nil {
		return "nil"
	}
	s := make([]string, 0, 13)
	s = append(s, "&vispb.StackTraceFlameGraph{")
	s = append(s, "StacktraceColumn: "+fmt.Sprintf("%#v", this.StacktraceColumn)+",\n")
	s = append(s, "CountColumn: "+fmt.Sprintf("%#v", this.CountColumn)+",\n")
	s = append(s, "PercentageColumn: "+fmt.Sprintf("%#v", this.PercentageColumn)+",\n")
	s = append(s, "NamespaceColumn: "+fmt.Sprintf("%#v", this.NamespaceColumn)+",\n")
	s = append(s, "PodColumn: "+fmt.Sprintf("%#v", this.PodColumn)+",\n")
	s = append(s, "ContainerColumn: "+fmt.Sprintf("%#v", this.ContainerColumn)+",\n")
	s = append(s, "PidColumn: "+fmt.Sprintf("%#v", this.PidColumn)+",\n")
	s = append(s, "NodeColumn: "+fmt.Sprintf("%#v", this.NodeColumn)+",\n")
	s = append(s, "PercentageLabel: "+fmt.Sprintf("%#v", this.PercentageLabel)+",\n")
	s = append(s, "}")
	return strings.Join(s, "")
}
func valueToGoStringVis(v interface{}, typ string) string {
	rv := reflect.ValueOf(v)
	if rv.IsNil() {
		return "nil"
	}
	pv := reflect.Indirect(rv).Interface()
	return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
}
func (m *Vis) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Vis) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Vis) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.GlobalFuncs) > 0 {
		for iNdEx := len(m.GlobalFuncs) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.GlobalFuncs[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintVis(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0x1a
		}
	}
	if len(m.Widgets) > 0 {
		for iNdEx := len(m.Widgets) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Widgets[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintVis(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0x12
		}
	}
	if len(m.Variables) > 0 {
		for iNdEx := len(m.Variables) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Variables[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintVis(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0xa
		}
	}
	return len(dAtA) - i, nil
}

func (m *Vis_Variable) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Vis_Variable) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Vis_Variable) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.ValidValues) > 0 {
		for iNdEx := len(m.ValidValues) - 1; iNdEx >= 0; iNdEx-- {
			i -= len(m.ValidValues[iNdEx])
			copy(dAtA[i:], m.ValidValues[iNdEx])
			i = encodeVarintVis(dAtA, i, uint64(len(m.ValidValues[iNdEx])))
			i--
			dAtA[i] = 0x2a
		}
	}
	if len(m.Description) > 0 {
		i -= len(m.Description)
		copy(dAtA[i:], m.Description)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Description)))
		i--
		dAtA[i] = 0x22
	}
	if m.DefaultValue != nil {
		{
			size, err := m.DefaultValue.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x1a
	}
	if m.Type != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.Type))
		i--
		dAtA[i] = 0x10
	}
	if len(m.Name) > 0 {
		i -= len(m.Name)
		copy(dAtA[i:], m.Name)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Name)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *Vis_GlobalFunc) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Vis_GlobalFunc) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Vis_GlobalFunc) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.Func != nil {
		{
			size, err := m.Func.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x12
	}
	if len(m.OutputName) > 0 {
		i -= len(m.OutputName)
		copy(dAtA[i:], m.OutputName)
		i = encodeVarintVis(dAtA, i, uint64(len(m.OutputName)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *Widget) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Widget) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Widget) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.FuncOrRef != nil {
		{
			size := m.FuncOrRef.Size()
			i -= size
			if _, err := m.FuncOrRef.MarshalTo(dAtA[i:]); err != nil {
				return 0, err
			}
		}
	}
	if m.DisplaySpec != nil {
		{
			size, err := m.DisplaySpec.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x22
	}
	if m.Position != nil {
		{
			size, err := m.Position.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x12
	}
	if len(m.Name) > 0 {
		i -= len(m.Name)
		copy(dAtA[i:], m.Name)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Name)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *Widget_Func_) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Widget_Func_) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	if m.Func != nil {
		{
			size, err := m.Func.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x1a
	}
	return len(dAtA) - i, nil
}
func (m *Widget_GlobalFuncOutputName) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Widget_GlobalFuncOutputName) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	i -= len(m.GlobalFuncOutputName)
	copy(dAtA[i:], m.GlobalFuncOutputName)
	i = encodeVarintVis(dAtA, i, uint64(len(m.GlobalFuncOutputName)))
	i--
	dAtA[i] = 0x2a
	return len(dAtA) - i, nil
}
func (m *Widget_Position) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Widget_Position) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Widget_Position) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.H != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.H))
		i--
		dAtA[i] = 0x20
	}
	if m.W != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.W))
		i--
		dAtA[i] = 0x18
	}
	if m.Y != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.Y))
		i--
		dAtA[i] = 0x10
	}
	if m.X != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.X))
		i--
		dAtA[i] = 0x8
	}
	return len(dAtA) - i, nil
}

func (m *Widget_Func) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Widget_Func) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Widget_Func) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Args) > 0 {
		for iNdEx := len(m.Args) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Args[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintVis(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0x12
		}
	}
	if len(m.Name) > 0 {
		i -= len(m.Name)
		copy(dAtA[i:], m.Name)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Name)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *Widget_Func_FuncArg) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Widget_Func_FuncArg) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Widget_Func_FuncArg) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.Input != nil {
		{
			size := m.Input.Size()
			i -= size
			if _, err := m.Input.MarshalTo(dAtA[i:]); err != nil {
				return 0, err
			}
		}
	}
	if len(m.Name) > 0 {
		i -= len(m.Name)
		copy(dAtA[i:], m.Name)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Name)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *Widget_Func_FuncArg_Value) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Widget_Func_FuncArg_Value) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	i -= len(m.Value)
	copy(dAtA[i:], m.Value)
	i = encodeVarintVis(dAtA, i, uint64(len(m.Value)))
	i--
	dAtA[i] = 0x12
	return len(dAtA) - i, nil
}
func (m *Widget_Func_FuncArg_Variable) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Widget_Func_FuncArg_Variable) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	i -= len(m.Variable)
	copy(dAtA[i:], m.Variable)
	i = encodeVarintVis(dAtA, i, uint64(len(m.Variable)))
	i--
	dAtA[i] = 0x1a
	return len(dAtA) - i, nil
}
func (m *Axis) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Axis) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Axis) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Label) > 0 {
		i -= len(m.Label)
		copy(dAtA[i:], m.Label)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Label)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *BarChart) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *BarChart) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *BarChart) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.YAxis != nil {
		{
			size, err := m.YAxis.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x22
	}
	if m.XAxis != nil {
		{
			size, err := m.XAxis.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x1a
	}
	if len(m.Title) > 0 {
		i -= len(m.Title)
		copy(dAtA[i:], m.Title)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Title)))
		i--
		dAtA[i] = 0x12
	}
	if m.Bar != nil {
		{
			size, err := m.Bar.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *BarChart_Bar) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *BarChart_Bar) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *BarChart_Bar) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.Horizontal {
		i--
		if m.Horizontal {
			dAtA[i] = 1
		} else {
			dAtA[i] = 0
		}
		i--
		dAtA[i] = 0x28
	}
	if len(m.GroupBy) > 0 {
		i -= len(m.GroupBy)
		copy(dAtA[i:], m.GroupBy)
		i = encodeVarintVis(dAtA, i, uint64(len(m.GroupBy)))
		i--
		dAtA[i] = 0x22
	}
	if len(m.StackBy) > 0 {
		i -= len(m.StackBy)
		copy(dAtA[i:], m.StackBy)
		i = encodeVarintVis(dAtA, i, uint64(len(m.StackBy)))
		i--
		dAtA[i] = 0x1a
	}
	if len(m.Label) > 0 {
		i -= len(m.Label)
		copy(dAtA[i:], m.Label)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Label)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.Value) > 0 {
		i -= len(m.Value)
		copy(dAtA[i:], m.Value)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Value)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *PieChart) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *PieChart) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *PieChart) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Title) > 0 {
		i -= len(m.Title)
		copy(dAtA[i:], m.Title)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Title)))
		i--
		dAtA[i] = 0x1a
	}
	if len(m.Value) > 0 {
		i -= len(m.Value)
		copy(dAtA[i:], m.Value)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Value)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.Label) > 0 {
		i -= len(m.Label)
		copy(dAtA[i:], m.Label)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Label)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *HistogramChart) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *HistogramChart) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *HistogramChart) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.YAxis != nil {
		{
			size, err := m.YAxis.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x22
	}
	if m.XAxis != nil {
		{
			size, err := m.XAxis.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x1a
	}
	if len(m.Title) > 0 {
		i -= len(m.Title)
		copy(dAtA[i:], m.Title)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Title)))
		i--
		dAtA[i] = 0x12
	}
	if m.Histogram != nil {
		{
			size, err := m.Histogram.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *HistogramChart_Histogram) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *HistogramChart_Histogram) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *HistogramChart_Histogram) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.PrebinCount) > 0 {
		i -= len(m.PrebinCount)
		copy(dAtA[i:], m.PrebinCount)
		i = encodeVarintVis(dAtA, i, uint64(len(m.PrebinCount)))
		i--
		dAtA[i] = 0x2a
	}
	if m.Horizontal {
		i--
		if m.Horizontal {
			dAtA[i] = 1
		} else {
			dAtA[i] = 0
		}
		i--
		dAtA[i] = 0x20
	}
	if m.Minstep != 0 {
		i -= 8
		encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(math.Float64bits(float64(m.Minstep))))
		i--
		dAtA[i] = 0x19
	}
	if m.Maxbins != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.Maxbins))
		i--
		dAtA[i] = 0x10
	}
	if len(m.Value) > 0 {
		i -= len(m.Value)
		copy(dAtA[i:], m.Value)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Value)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *GaugeChart) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *GaugeChart) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *GaugeChart) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Title) > 0 {
		i -= len(m.Title)
		copy(dAtA[i:], m.Title)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Title)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.Value) > 0 {
		i -= len(m.Value)
		copy(dAtA[i:], m.Value)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Value)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *TimeseriesChart) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *TimeseriesChart) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *TimeseriesChart) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.YAxis != nil {
		{
			size, err := m.YAxis.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x22
	}
	if m.XAxis != nil {
		{
			size, err := m.XAxis.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x1a
	}
	if len(m.Title) > 0 {
		i -= len(m.Title)
		copy(dAtA[i:], m.Title)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Title)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.Timeseries) > 0 {
		for iNdEx := len(m.Timeseries) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Timeseries[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintVis(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0xa
		}
	}
	return len(dAtA) - i, nil
}

func (m *TimeseriesChart_Timeseries) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *TimeseriesChart_Timeseries) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *TimeseriesChart_Timeseries) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.Mode != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.Mode))
		i--
		dAtA[i] = 0x20
	}
	if m.StackBySeries {
		i--
		if m.StackBySeries {
			dAtA[i] = 1
		} else {
			dAtA[i] = 0
		}
		i--
		dAtA[i] = 0x18
	}
	if len(m.Series) > 0 {
		i -= len(m.Series)
		copy(dAtA[i:], m.Series)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Series)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.Value) > 0 {
		i -= len(m.Value)
		copy(dAtA[i:], m.Value)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Value)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *StatChart) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *StatChart) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *StatChart) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Title) > 0 {
		i -= len(m.Title)
		copy(dAtA[i:], m.Title)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Title)))
		i--
		dAtA[i] = 0x12
	}
	if m.Stat != nil {
		{
			size, err := m.Stat.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *StatChart_Stat) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *StatChart_Stat) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *StatChart_Stat) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Value) > 0 {
		i -= len(m.Value)
		copy(dAtA[i:], m.Value)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Value)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *TextChart) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *TextChart) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *TextChart) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Body) > 0 {
		i -= len(m.Body)
		copy(dAtA[i:], m.Body)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Body)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *VegaChart) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *VegaChart) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *VegaChart) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Spec) > 0 {
		i -= len(m.Spec)
		copy(dAtA[i:], m.Spec)
		i = encodeVarintVis(dAtA, i, uint64(len(m.Spec)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *Table) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Table) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Table) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.GutterColumn) > 0 {
		i -= len(m.GutterColumn)
		copy(dAtA[i:], m.GutterColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.GutterColumn)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *Graph) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Graph) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Graph) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.EnableDefaultHierarchy {
		i--
		if m.EnableDefaultHierarchy {
			dAtA[i] = 1
		} else {
			dAtA[i] = 0
		}
		i--
		dAtA[i] = 0x48
	}
	if m.EdgeLength != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.EdgeLength))
		i--
		dAtA[i] = 0x40
	}
	if len(m.EdgeHoverInfo) > 0 {
		for iNdEx := len(m.EdgeHoverInfo) - 1; iNdEx >= 0; iNdEx-- {
			i -= len(m.EdgeHoverInfo[iNdEx])
			copy(dAtA[i:], m.EdgeHoverInfo[iNdEx])
			i = encodeVarintVis(dAtA, i, uint64(len(m.EdgeHoverInfo[iNdEx])))
			i--
			dAtA[i] = 0x3a
		}
	}
	if m.EdgeThresholds != nil {
		{
			size, err := m.EdgeThresholds.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x32
	}
	if len(m.EdgeColorColumn) > 0 {
		i -= len(m.EdgeColorColumn)
		copy(dAtA[i:], m.EdgeColorColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.EdgeColorColumn)))
		i--
		dAtA[i] = 0x2a
	}
	if len(m.NodeWeightColumn) > 0 {
		i -= len(m.NodeWeightColumn)
		copy(dAtA[i:], m.NodeWeightColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.NodeWeightColumn)))
		i--
		dAtA[i] = 0x22
	}
	if len(m.EdgeWeightColumn) > 0 {
		i -= len(m.EdgeWeightColumn)
		copy(dAtA[i:], m.EdgeWeightColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.EdgeWeightColumn)))
		i--
		dAtA[i] = 0x1a
	}
	if m.Input != nil {
		{
			size := m.Input.Size()
			i -= size
			if _, err := m.Input.MarshalTo(dAtA[i:]); err != nil {
				return 0, err
			}
		}
	}
	return len(dAtA) - i, nil
}

func (m *Graph_DotColumn) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Graph_DotColumn) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	i -= len(m.DotColumn)
	copy(dAtA[i:], m.DotColumn)
	i = encodeVarintVis(dAtA, i, uint64(len(m.DotColumn)))
	i--
	dAtA[i] = 0xa
	return len(dAtA) - i, nil
}
func (m *Graph_AdjacencyList_) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Graph_AdjacencyList_) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	if m.AdjacencyList != nil {
		{
			size, err := m.AdjacencyList.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintVis(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0x12
	}
	return len(dAtA) - i, nil
}
func (m *Graph_AdjacencyList) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Graph_AdjacencyList) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Graph_AdjacencyList) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.ToColumn) > 0 {
		i -= len(m.ToColumn)
		copy(dAtA[i:], m.ToColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.ToColumn)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.FromColumn) > 0 {
		i -= len(m.FromColumn)
		copy(dAtA[i:], m.FromColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.FromColumn)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *Graph_EdgeThresholds) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *Graph_EdgeThresholds) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *Graph_EdgeThresholds) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.HighThreshold != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.HighThreshold))
		i--
		dAtA[i] = 0x10
	}
	if m.MediumThreshold != 0 {
		i = encodeVarintVis(dAtA, i, uint64(m.MediumThreshold))
		i--
		dAtA[i] = 0x8
	}
	return len(dAtA) - i, nil
}

func (m *RequestGraph) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *RequestGraph) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *RequestGraph) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.ResponderIPColumn) > 0 {
		i -= len(m.ResponderIPColumn)
		copy(dAtA[i:], m.ResponderIPColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.ResponderIPColumn)))
		i--
		dAtA[i] = 0x72
	}
	if len(m.RequestorIPColumn) > 0 {
		i -= len(m.RequestorIPColumn)
		copy(dAtA[i:], m.RequestorIPColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.RequestorIPColumn)))
		i--
		dAtA[i] = 0x6a
	}
	if len(m.TotalRequestCountColumn) > 0 {
		i -= len(m.TotalRequestCountColumn)
		copy(dAtA[i:], m.TotalRequestCountColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.TotalRequestCountColumn)))
		i--
		dAtA[i] = 0x62
	}
	if len(m.OutboundBytesPerSecondColumn) > 0 {
		i -= len(m.OutboundBytesPerSecondColumn)
		copy(dAtA[i:], m.OutboundBytesPerSecondColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.OutboundBytesPerSecondColumn)))
		i--
		dAtA[i] = 0x5a
	}
	if len(m.InboundBytesPerSecondColumn) > 0 {
		i -= len(m.InboundBytesPerSecondColumn)
		copy(dAtA[i:], m.InboundBytesPerSecondColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.InboundBytesPerSecondColumn)))
		i--
		dAtA[i] = 0x52
	}
	if len(m.RequestsPerSecondColumn) > 0 {
		i -= len(m.RequestsPerSecondColumn)
		copy(dAtA[i:], m.RequestsPerSecondColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.RequestsPerSecondColumn)))
		i--
		dAtA[i] = 0x4a
	}
	if len(m.ErrorRateColumn) > 0 {
		i -= len(m.ErrorRateColumn)
		copy(dAtA[i:], m.ErrorRateColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.ErrorRateColumn)))
		i--
		dAtA[i] = 0x42
	}
	if len(m.P99Column) > 0 {
		i -= len(m.P99Column)
		copy(dAtA[i:], m.P99Column)
		i = encodeVarintVis(dAtA, i, uint64(len(m.P99Column)))
		i--
		dAtA[i] = 0x3a
	}
	if len(m.P90Column) > 0 {
		i -= len(m.P90Column)
		copy(dAtA[i:], m.P90Column)
		i = encodeVarintVis(dAtA, i, uint64(len(m.P90Column)))
		i--
		dAtA[i] = 0x32
	}
	if len(m.P50Column) > 0 {
		i -= len(m.P50Column)
		copy(dAtA[i:], m.P50Column)
		i = encodeVarintVis(dAtA, i, uint64(len(m.P50Column)))
		i--
		dAtA[i] = 0x2a
	}
	if len(m.ResponderServiceColumn) > 0 {
		i -= len(m.ResponderServiceColumn)
		copy(dAtA[i:], m.ResponderServiceColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.ResponderServiceColumn)))
		i--
		dAtA[i] = 0x22
	}
	if len(m.RequestorServiceColumn) > 0 {
		i -= len(m.RequestorServiceColumn)
		copy(dAtA[i:], m.RequestorServiceColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.RequestorServiceColumn)))
		i--
		dAtA[i] = 0x1a
	}
	if len(m.ResponderPodColumn) > 0 {
		i -= len(m.ResponderPodColumn)
		copy(dAtA[i:], m.ResponderPodColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.ResponderPodColumn)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.RequestorPodColumn) > 0 {
		i -= len(m.RequestorPodColumn)
		copy(dAtA[i:], m.RequestorPodColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.RequestorPodColumn)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *StackTraceFlameGraph) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *StackTraceFlameGraph) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *StackTraceFlameGraph) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.PercentageLabel) > 0 {
		i -= len(m.PercentageLabel)
		copy(dAtA[i:], m.PercentageLabel)
		i = encodeVarintVis(dAtA, i, uint64(len(m.PercentageLabel)))
		i--
		dAtA[i] = 0x4a
	}
	if len(m.NodeColumn) > 0 {
		i -= len(m.NodeColumn)
		copy(dAtA[i:], m.NodeColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.NodeColumn)))
		i--
		dAtA[i] = 0x42
	}
	if len(m.PidColumn) > 0 {
		i -= len(m.PidColumn)
		copy(dAtA[i:], m.PidColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.PidColumn)))
		i--
		dAtA[i] = 0x3a
	}
	if len(m.ContainerColumn) > 0 {
		i -= len(m.ContainerColumn)
		copy(dAtA[i:], m.ContainerColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.ContainerColumn)))
		i--
		dAtA[i] = 0x32
	}
	if len(m.PodColumn) > 0 {
		i -= len(m.PodColumn)
		copy(dAtA[i:], m.PodColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.PodColumn)))
		i--
		dAtA[i] = 0x2a
	}
	if len(m.NamespaceColumn) > 0 {
		i -= len(m.NamespaceColumn)
		copy(dAtA[i:], m.NamespaceColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.NamespaceColumn)))
		i--
		dAtA[i] = 0x22
	}
	if len(m.PercentageColumn) > 0 {
		i -= len(m.PercentageColumn)
		copy(dAtA[i:], m.PercentageColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.PercentageColumn)))
		i--
		dAtA[i] = 0x1a
	}
	if len(m.CountColumn) > 0 {
		i -= len(m.CountColumn)
		copy(dAtA[i:], m.CountColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.CountColumn)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.StacktraceColumn) > 0 {
		i -= len(m.StacktraceColumn)
		copy(dAtA[i:], m.StacktraceColumn)
		i = encodeVarintVis(dAtA, i, uint64(len(m.StacktraceColumn)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func encodeVarintVis(dAtA []byte, offset int, v uint64) int {
	offset -= sovVis(v)
	base := offset
	for v >= 1<<7 {
		dAtA[offset] = uint8(v&0x7f | 0x80)
		v >>= 7
		offset++
	}
	dAtA[offset] = uint8(v)
	return base
}
func (m *Vis) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if len(m.Variables) > 0 {
		for _, e := range m.Variables {
			l = e.Size()
			n += 1 + l + sovVis(uint64(l))
		}
	}
	if len(m.Widgets) > 0 {
		for _, e := range m.Widgets {
			l = e.Size()
			n += 1 + l + sovVis(uint64(l))
		}
	}
	if len(m.GlobalFuncs) > 0 {
		for _, e := range m.GlobalFuncs {
			l = e.Size()
			n += 1 + l + sovVis(uint64(l))
		}
	}
	return n
}

func (m *Vis_Variable) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Name)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.Type != 0 {
		n += 1 + sovVis(uint64(m.Type))
	}
	if m.DefaultValue != nil {
		l = m.DefaultValue.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Description)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if len(m.ValidValues) > 0 {
		for _, s := range m.ValidValues {
			l = len(s)
			n += 1 + l + sovVis(uint64(l))
		}
	}
	return n
}

func (m *Vis_GlobalFunc) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.OutputName)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.Func != nil {
		l = m.Func.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *Widget) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Name)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.Position != nil {
		l = m.Position.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	if m.FuncOrRef != nil {
		n += m.FuncOrRef.Size()
	}
	if m.DisplaySpec != nil {
		l = m.DisplaySpec.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *Widget_Func_) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.Func != nil {
		l = m.Func.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}
func (m *Widget_GlobalFuncOutputName) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.GlobalFuncOutputName)
	n += 1 + l + sovVis(uint64(l))
	return n
}
func (m *Widget_Position) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.X != 0 {
		n += 1 + sovVis(uint64(m.X))
	}
	if m.Y != 0 {
		n += 1 + sovVis(uint64(m.Y))
	}
	if m.W != 0 {
		n += 1 + sovVis(uint64(m.W))
	}
	if m.H != 0 {
		n += 1 + sovVis(uint64(m.H))
	}
	return n
}

func (m *Widget_Func) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Name)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if len(m.Args) > 0 {
		for _, e := range m.Args {
			l = e.Size()
			n += 1 + l + sovVis(uint64(l))
		}
	}
	return n
}

func (m *Widget_Func_FuncArg) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Name)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.Input != nil {
		n += m.Input.Size()
	}
	return n
}

func (m *Widget_Func_FuncArg_Value) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Value)
	n += 1 + l + sovVis(uint64(l))
	return n
}
func (m *Widget_Func_FuncArg_Variable) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Variable)
	n += 1 + l + sovVis(uint64(l))
	return n
}
func (m *Axis) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Label)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *BarChart) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.Bar != nil {
		l = m.Bar.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Title)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.XAxis != nil {
		l = m.XAxis.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	if m.YAxis != nil {
		l = m.YAxis.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *BarChart_Bar) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Value)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Label)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.StackBy)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.GroupBy)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.Horizontal {
		n += 2
	}
	return n
}

func (m *PieChart) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Label)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Value)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Title)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *HistogramChart) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.Histogram != nil {
		l = m.Histogram.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Title)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.XAxis != nil {
		l = m.XAxis.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	if m.YAxis != nil {
		l = m.YAxis.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *HistogramChart_Histogram) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Value)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.Maxbins != 0 {
		n += 1 + sovVis(uint64(m.Maxbins))
	}
	if m.Minstep != 0 {
		n += 9
	}
	if m.Horizontal {
		n += 2
	}
	l = len(m.PrebinCount)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *GaugeChart) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Value)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Title)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *TimeseriesChart) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if len(m.Timeseries) > 0 {
		for _, e := range m.Timeseries {
			l = e.Size()
			n += 1 + l + sovVis(uint64(l))
		}
	}
	l = len(m.Title)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.XAxis != nil {
		l = m.XAxis.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	if m.YAxis != nil {
		l = m.YAxis.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *TimeseriesChart_Timeseries) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Value)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Series)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.StackBySeries {
		n += 2
	}
	if m.Mode != 0 {
		n += 1 + sovVis(uint64(m.Mode))
	}
	return n
}

func (m *StatChart) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.Stat != nil {
		l = m.Stat.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.Title)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *StatChart_Stat) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Value)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *TextChart) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Body)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *VegaChart) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Spec)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *Table) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.GutterColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *Graph) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.Input != nil {
		n += m.Input.Size()
	}
	l = len(m.EdgeWeightColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.NodeWeightColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.EdgeColorColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	if m.EdgeThresholds != nil {
		l = m.EdgeThresholds.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	if len(m.EdgeHoverInfo) > 0 {
		for _, s := range m.EdgeHoverInfo {
			l = len(s)
			n += 1 + l + sovVis(uint64(l))
		}
	}
	if m.EdgeLength != 0 {
		n += 1 + sovVis(uint64(m.EdgeLength))
	}
	if m.EnableDefaultHierarchy {
		n += 2
	}
	return n
}

func (m *Graph_DotColumn) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.DotColumn)
	n += 1 + l + sovVis(uint64(l))
	return n
}
func (m *Graph_AdjacencyList_) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.AdjacencyList != nil {
		l = m.AdjacencyList.Size()
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}
func (m *Graph_AdjacencyList) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.FromColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.ToColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *Graph_EdgeThresholds) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.MediumThreshold != 0 {
		n += 1 + sovVis(uint64(m.MediumThreshold))
	}
	if m.HighThreshold != 0 {
		n += 1 + sovVis(uint64(m.HighThreshold))
	}
	return n
}

func (m *RequestGraph) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.RequestorPodColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.ResponderPodColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.RequestorServiceColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.ResponderServiceColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.P50Column)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.P90Column)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.P99Column)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.ErrorRateColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.RequestsPerSecondColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.InboundBytesPerSecondColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.OutboundBytesPerSecondColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.TotalRequestCountColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.RequestorIPColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.ResponderIPColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func (m *StackTraceFlameGraph) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.StacktraceColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.CountColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.PercentageColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.NamespaceColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.PodColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.ContainerColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.PidColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.NodeColumn)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	l = len(m.PercentageLabel)
	if l > 0 {
		n += 1 + l + sovVis(uint64(l))
	}
	return n
}

func sovVis(x uint64) (n int) {
	return (math_bits.Len64(x|1) + 6) / 7
}
func sozVis(x uint64) (n int) {
	return sovVis(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (this *Vis) String() string {
	if this == nil {
		return "nil"
	}
	repeatedStringForVariables := "[]*Vis_Variable{"
	for _, f := range this.Variables {
		repeatedStringForVariables += strings.Replace(fmt.Sprintf("%v", f), "Vis_Variable", "Vis_Variable", 1) + ","
	}
	repeatedStringForVariables += "}"
	repeatedStringForWidgets := "[]*Widget{"
	for _, f := range this.Widgets {
		repeatedStringForWidgets += strings.Replace(f.String(), "Widget", "Widget", 1) + ","
	}
	repeatedStringForWidgets += "}"
	repeatedStringForGlobalFuncs := "[]*Vis_GlobalFunc{"
	for _, f := range this.GlobalFuncs {
		repeatedStringForGlobalFuncs += strings.Replace(fmt.Sprintf("%v", f), "Vis_GlobalFunc", "Vis_GlobalFunc", 1) + ","
	}
	repeatedStringForGlobalFuncs += "}"
	s := strings.Join([]string{`&Vis{`,
		`Variables:` + repeatedStringForVariables + `,`,
		`Widgets:` + repeatedStringForWidgets + `,`,
		`GlobalFuncs:` + repeatedStringForGlobalFuncs + `,`,
		`}`,
	}, "")
	return s
}
func (this *Vis_Variable) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Vis_Variable{`,
		`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
		`Type:` + fmt.Sprintf("%v", this.Type) + `,`,
		`DefaultValue:` + strings.Replace(fmt.Sprintf("%v", this.DefaultValue), "StringValue", "types.StringValue", 1) + `,`,
		`Description:` + fmt.Sprintf("%v", this.Description) + `,`,
		`ValidValues:` + fmt.Sprintf("%v", this.ValidValues) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Vis_GlobalFunc) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Vis_GlobalFunc{`,
		`OutputName:` + fmt.Sprintf("%v", this.OutputName) + `,`,
		`Func:` + strings.Replace(fmt.Sprintf("%v", this.Func), "Widget_Func", "Widget_Func", 1) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Widget) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Widget{`,
		`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
		`Position:` + strings.Replace(fmt.Sprintf("%v", this.Position), "Widget_Position", "Widget_Position", 1) + `,`,
		`FuncOrRef:` + fmt.Sprintf("%v", this.FuncOrRef) + `,`,
		`DisplaySpec:` + strings.Replace(fmt.Sprintf("%v", this.DisplaySpec), "Any", "types.Any", 1) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Widget_Func_) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Widget_Func_{`,
		`Func:` + strings.Replace(fmt.Sprintf("%v", this.Func), "Widget_Func", "Widget_Func", 1) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Widget_GlobalFuncOutputName) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Widget_GlobalFuncOutputName{`,
		`GlobalFuncOutputName:` + fmt.Sprintf("%v", this.GlobalFuncOutputName) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Widget_Position) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Widget_Position{`,
		`X:` + fmt.Sprintf("%v", this.X) + `,`,
		`Y:` + fmt.Sprintf("%v", this.Y) + `,`,
		`W:` + fmt.Sprintf("%v", this.W) + `,`,
		`H:` + fmt.Sprintf("%v", this.H) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Widget_Func) String() string {
	if this == nil {
		return "nil"
	}
	repeatedStringForArgs := "[]*Widget_Func_FuncArg{"
	for _, f := range this.Args {
		repeatedStringForArgs += strings.Replace(fmt.Sprintf("%v", f), "Widget_Func_FuncArg", "Widget_Func_FuncArg", 1) + ","
	}
	repeatedStringForArgs += "}"
	s := strings.Join([]string{`&Widget_Func{`,
		`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
		`Args:` + repeatedStringForArgs + `,`,
		`}`,
	}, "")
	return s
}
func (this *Widget_Func_FuncArg) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Widget_Func_FuncArg{`,
		`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
		`Input:` + fmt.Sprintf("%v", this.Input) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Widget_Func_FuncArg_Value) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Widget_Func_FuncArg_Value{`,
		`Value:` + fmt.Sprintf("%v", this.Value) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Widget_Func_FuncArg_Variable) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Widget_Func_FuncArg_Variable{`,
		`Variable:` + fmt.Sprintf("%v", this.Variable) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Axis) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Axis{`,
		`Label:` + fmt.Sprintf("%v", this.Label) + `,`,
		`}`,
	}, "")
	return s
}
func (this *BarChart) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&BarChart{`,
		`Bar:` + strings.Replace(fmt.Sprintf("%v", this.Bar), "BarChart_Bar", "BarChart_Bar", 1) + `,`,
		`Title:` + fmt.Sprintf("%v", this.Title) + `,`,
		`XAxis:` + strings.Replace(this.XAxis.String(), "Axis", "Axis", 1) + `,`,
		`YAxis:` + strings.Replace(this.YAxis.String(), "Axis", "Axis", 1) + `,`,
		`}`,
	}, "")
	return s
}
func (this *BarChart_Bar) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&BarChart_Bar{`,
		`Value:` + fmt.Sprintf("%v", this.Value) + `,`,
		`Label:` + fmt.Sprintf("%v", this.Label) + `,`,
		`StackBy:` + fmt.Sprintf("%v", this.StackBy) + `,`,
		`GroupBy:` + fmt.Sprintf("%v", this.GroupBy) + `,`,
		`Horizontal:` + fmt.Sprintf("%v", this.Horizontal) + `,`,
		`}`,
	}, "")
	return s
}
func (this *PieChart) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&PieChart{`,
		`Label:` + fmt.Sprintf("%v", this.Label) + `,`,
		`Value:` + fmt.Sprintf("%v", this.Value) + `,`,
		`Title:` + fmt.Sprintf("%v", this.Title) + `,`,
		`}`,
	}, "")
	return s
}
func (this *HistogramChart) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&HistogramChart{`,
		`Histogram:` + strings.Replace(fmt.Sprintf("%v", this.Histogram), "HistogramChart_Histogram", "HistogramChart_Histogram", 1) + `,`,
		`Title:` + fmt.Sprintf("%v", this.Title) + `,`,
		`XAxis:` + strings.Replace(this.XAxis.String(), "Axis", "Axis", 1) + `,`,
		`YAxis:` + strings.Replace(this.YAxis.String(), "Axis", "Axis", 1) + `,`,
		`}`,
	}, "")
	return s
}
func (this *HistogramChart_Histogram) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&HistogramChart_Histogram{`,
		`Value:` + fmt.Sprintf("%v", this.Value) + `,`,
		`Maxbins:` + fmt.Sprintf("%v", this.Maxbins) + `,`,
		`Minstep:` + fmt.Sprintf("%v", this.Minstep) + `,`,
		`Horizontal:` + fmt.Sprintf("%v", this.Horizontal) + `,`,
		`PrebinCount:` + fmt.Sprintf("%v", this.PrebinCount) + `,`,
		`}`,
	}, "")
	return s
}
func (this *GaugeChart) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&GaugeChart{`,
		`Value:` + fmt.Sprintf("%v", this.Value) + `,`,
		`Title:` + fmt.Sprintf("%v", this.Title) + `,`,
		`}`,
	}, "")
	return s
}
func (this *TimeseriesChart) String() string {
	if this == nil {
		return "nil"
	}
	repeatedStringForTimeseries := "[]*TimeseriesChart_Timeseries{"
	for _, f := range this.Timeseries {
		repeatedStringForTimeseries += strings.Replace(fmt.Sprintf("%v", f), "TimeseriesChart_Timeseries", "TimeseriesChart_Timeseries", 1) + ","
	}
	repeatedStringForTimeseries += "}"
	s := strings.Join([]string{`&TimeseriesChart{`,
		`Timeseries:` + repeatedStringForTimeseries + `,`,
		`Title:` + fmt.Sprintf("%v", this.Title) + `,`,
		`XAxis:` + strings.Replace(this.XAxis.String(), "Axis", "Axis", 1) + `,`,
		`YAxis:` + strings.Replace(this.YAxis.String(), "Axis", "Axis", 1) + `,`,
		`}`,
	}, "")
	return s
}
func (this *TimeseriesChart_Timeseries) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&TimeseriesChart_Timeseries{`,
		`Value:` + fmt.Sprintf("%v", this.Value) + `,`,
		`Series:` + fmt.Sprintf("%v", this.Series) + `,`,
		`StackBySeries:` + fmt.Sprintf("%v", this.StackBySeries) + `,`,
		`Mode:` + fmt.Sprintf("%v", this.Mode) + `,`,
		`}`,
	}, "")
	return s
}
func (this *StatChart) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&StatChart{`,
		`Stat:` + strings.Replace(fmt.Sprintf("%v", this.Stat), "StatChart_Stat", "StatChart_Stat", 1) + `,`,
		`Title:` + fmt.Sprintf("%v", this.Title) + `,`,
		`}`,
	}, "")
	return s
}
func (this *StatChart_Stat) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&StatChart_Stat{`,
		`Value:` + fmt.Sprintf("%v", this.Value) + `,`,
		`}`,
	}, "")
	return s
}
func (this *TextChart) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&TextChart{`,
		`Body:` + fmt.Sprintf("%v", this.Body) + `,`,
		`}`,
	}, "")
	return s
}
func (this *VegaChart) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&VegaChart{`,
		`Spec:` + fmt.Sprintf("%v", this.Spec) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Table) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Table{`,
		`GutterColumn:` + fmt.Sprintf("%v", this.GutterColumn) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Graph) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Graph{`,
		`Input:` + fmt.Sprintf("%v", this.Input) + `,`,
		`EdgeWeightColumn:` + fmt.Sprintf("%v", this.EdgeWeightColumn) + `,`,
		`NodeWeightColumn:` + fmt.Sprintf("%v", this.NodeWeightColumn) + `,`,
		`EdgeColorColumn:` + fmt.Sprintf("%v", this.EdgeColorColumn) + `,`,
		`EdgeThresholds:` + strings.Replace(fmt.Sprintf("%v", this.EdgeThresholds), "Graph_EdgeThresholds", "Graph_EdgeThresholds", 1) + `,`,
		`EdgeHoverInfo:` + fmt.Sprintf("%v", this.EdgeHoverInfo) + `,`,
		`EdgeLength:` + fmt.Sprintf("%v", this.EdgeLength) + `,`,
		`EnableDefaultHierarchy:` + fmt.Sprintf("%v", this.EnableDefaultHierarchy) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Graph_DotColumn) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Graph_DotColumn{`,
		`DotColumn:` + fmt.Sprintf("%v", this.DotColumn) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Graph_AdjacencyList_) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Graph_AdjacencyList_{`,
		`AdjacencyList:` + strings.Replace(fmt.Sprintf("%v", this.AdjacencyList), "Graph_AdjacencyList", "Graph_AdjacencyList", 1) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Graph_AdjacencyList) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Graph_AdjacencyList{`,
		`FromColumn:` + fmt.Sprintf("%v", this.FromColumn) + `,`,
		`ToColumn:` + fmt.Sprintf("%v", this.ToColumn) + `,`,
		`}`,
	}, "")
	return s
}
func (this *Graph_EdgeThresholds) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&Graph_EdgeThresholds{`,
		`MediumThreshold:` + fmt.Sprintf("%v", this.MediumThreshold) + `,`,
		`HighThreshold:` + fmt.Sprintf("%v", this.HighThreshold) + `,`,
		`}`,
	}, "")
	return s
}
func (this *RequestGraph) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&RequestGraph{`,
		`RequestorPodColumn:` + fmt.Sprintf("%v", this.RequestorPodColumn) + `,`,
		`ResponderPodColumn:` + fmt.Sprintf("%v", this.ResponderPodColumn) + `,`,
		`RequestorServiceColumn:` + fmt.Sprintf("%v", this.RequestorServiceColumn) + `,`,
		`ResponderServiceColumn:` + fmt.Sprintf("%v", this.ResponderServiceColumn) + `,`,
		`P50Column:` + fmt.Sprintf("%v", this.P50Column) + `,`,
		`P90Column:` + fmt.Sprintf("%v", this.P90Column) + `,`,
		`P99Column:` + fmt.Sprintf("%v", this.P99Column) + `,`,
		`ErrorRateColumn:` + fmt.Sprintf("%v", this.ErrorRateColumn) + `,`,
		`RequestsPerSecondColumn:` + fmt.Sprintf("%v", this.RequestsPerSecondColumn) + `,`,
		`InboundBytesPerSecondColumn:` + fmt.Sprintf("%v", this.InboundBytesPerSecondColumn) + `,`,
		`OutboundBytesPerSecondColumn:` + fmt.Sprintf("%v", this.OutboundBytesPerSecondColumn) + `,`,
		`TotalRequestCountColumn:` + fmt.Sprintf("%v", this.TotalRequestCountColumn) + `,`,
		`RequestorIPColumn:` + fmt.Sprintf("%v", this.RequestorIPColumn) + `,`,
		`ResponderIPColumn:` + fmt.Sprintf("%v", this.ResponderIPColumn) + `,`,
		`}`,
	}, "")
	return s
}
func (this *StackTraceFlameGraph) String() string {
	if this == nil {
		return "nil"
	}
	s := strings.Join([]string{`&StackTraceFlameGraph{`,
		`StacktraceColumn:` + fmt.Sprintf("%v", this.StacktraceColumn) + `,`,
		`CountColumn:` + fmt.Sprintf("%v", this.CountColumn) + `,`,
		`PercentageColumn:` + fmt.Sprintf("%v", this.PercentageColumn) + `,`,
		`NamespaceColumn:` + fmt.Sprintf("%v", this.NamespaceColumn) + `,`,
		`PodColumn:` + fmt.Sprintf("%v", this.PodColumn) + `,`,
		`ContainerColumn:` + fmt.Sprintf("%v", this.ContainerColumn) + `,`,
		`PidColumn:` + fmt.Sprintf("%v", this.PidColumn) + `,`,
		`NodeColumn:` + fmt.Sprintf("%v", this.NodeColumn) + `,`,
		`PercentageLabel:` + fmt.Sprintf("%v", this.PercentageLabel) + `,`,
		`}`,
	}, "")
	return s
}
func valueToStringVis(v interface{}) string {
	rv := reflect.ValueOf(v)
	if rv.IsNil() {
		return "nil"
	}
	pv := reflect.Indirect(rv).Interface()
	return fmt.Sprintf("*%v", pv)
}
func (m *Vis) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Vis: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Vis: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Variables", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Variables = append(m.Variables, &Vis_Variable{})
			if err := m.Variables[len(m.Variables)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Widgets", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Widgets = append(m.Widgets, &Widget{})
			if err := m.Widgets[len(m.Widgets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field GlobalFuncs", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.GlobalFuncs = append(m.GlobalFuncs, &Vis_GlobalFunc{})
			if err := m.GlobalFuncs[len(m.GlobalFuncs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Vis_Variable) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Variable: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Variable: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Name = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
			}
			m.Type = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.Type |= PXType(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field DefaultValue", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.DefaultValue == nil {
				m.DefaultValue = &types.StringValue{}
			}
			if err := m.DefaultValue.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Description = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 5:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ValidValues", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ValidValues = append(m.ValidValues, string(dAtA[iNdEx:postIndex]))
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Vis_GlobalFunc) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: GlobalFunc: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: GlobalFunc: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field OutputName", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.OutputName = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Func", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.Func == nil {
				m.Func = &Widget_Func{}
			}
			if err := m.Func.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Widget) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Widget: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Widget: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Name = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Position", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.Position == nil {
				m.Position = &Widget_Position{}
			}
			if err := m.Position.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Func", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			v := &Widget_Func{}
			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			m.FuncOrRef = &Widget_Func_{v}
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field DisplaySpec", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.DisplaySpec == nil {
				m.DisplaySpec = &types.Any{}
			}
			if err := m.DisplaySpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 5:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field GlobalFuncOutputName", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.FuncOrRef = &Widget_GlobalFuncOutputName{string(dAtA[iNdEx:postIndex])}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Widget_Position) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Position: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Position: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
			}
			m.X = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.X |= int32(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 2:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field Y", wireType)
			}
			m.Y = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.Y |= int32(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 3:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field W", wireType)
			}
			m.W = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.W |= int32(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 4:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
			}
			m.H = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.H |= int32(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Widget_Func) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Func: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Func: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Name = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Args", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Args = append(m.Args, &Widget_Func_FuncArg{})
			if err := m.Args[len(m.Args)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Widget_Func_FuncArg) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: FuncArg: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: FuncArg: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Name = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Input = &Widget_Func_FuncArg_Value{string(dAtA[iNdEx:postIndex])}
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Variable", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Input = &Widget_Func_FuncArg_Variable{string(dAtA[iNdEx:postIndex])}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Axis) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Axis: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Axis: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Label", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Label = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *BarChart) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: BarChart: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: BarChart: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Bar", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.Bar == nil {
				m.Bar = &BarChart_Bar{}
			}
			if err := m.Bar.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Title = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field XAxis", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.XAxis == nil {
				m.XAxis = &Axis{}
			}
			if err := m.XAxis.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field YAxis", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.YAxis == nil {
				m.YAxis = &Axis{}
			}
			if err := m.YAxis.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *BarChart_Bar) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Bar: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Bar: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Value = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Label", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Label = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field StackBy", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.StackBy = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field GroupBy", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.GroupBy = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 5:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field Horizontal", wireType)
			}
			var v int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				v |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			m.Horizontal = bool(v != 0)
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *PieChart) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: PieChart: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: PieChart: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Label", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Label = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Value = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Title = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *HistogramChart) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: HistogramChart: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: HistogramChart: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Histogram", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.Histogram == nil {
				m.Histogram = &HistogramChart_Histogram{}
			}
			if err := m.Histogram.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Title = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field XAxis", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.XAxis == nil {
				m.XAxis = &Axis{}
			}
			if err := m.XAxis.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field YAxis", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.YAxis == nil {
				m.YAxis = &Axis{}
			}
			if err := m.YAxis.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *HistogramChart_Histogram) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Histogram: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Histogram: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Value = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field Maxbins", wireType)
			}
			m.Maxbins = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.Maxbins |= int64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 3:
			if wireType != 1 {
				return fmt.Errorf("proto: wrong wireType = %d for field Minstep", wireType)
			}
			var v uint64
			if (iNdEx + 8) > l {
				return io.ErrUnexpectedEOF
			}
			v = uint64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:]))
			iNdEx += 8
			m.Minstep = float64(math.Float64frombits(v))
		case 4:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field Horizontal", wireType)
			}
			var v int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				v |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			m.Horizontal = bool(v != 0)
		case 5:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field PrebinCount", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.PrebinCount = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *GaugeChart) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: GaugeChart: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: GaugeChart: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Value = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Title = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *TimeseriesChart) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: TimeseriesChart: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: TimeseriesChart: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Timeseries", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Timeseries = append(m.Timeseries, &TimeseriesChart_Timeseries{})
			if err := m.Timeseries[len(m.Timeseries)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Title = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field XAxis", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.XAxis == nil {
				m.XAxis = &Axis{}
			}
			if err := m.XAxis.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field YAxis", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.YAxis == nil {
				m.YAxis = &Axis{}
			}
			if err := m.YAxis.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *TimeseriesChart_Timeseries) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Timeseries: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Timeseries: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Value = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Series", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Series = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field StackBySeries", wireType)
			}
			var v int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				v |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			m.StackBySeries = bool(v != 0)
		case 4:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field Mode", wireType)
			}
			m.Mode = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.Mode |= TimeseriesChart_Timeseries_Mode(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *StatChart) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: StatChart: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: StatChart: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Stat", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.Stat == nil {
				m.Stat = &StatChart_Stat{}
			}
			if err := m.Stat.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Title = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *StatChart_Stat) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Stat: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Stat: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Value = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *TextChart) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: TextChart: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: TextChart: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Body", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Body = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *VegaChart) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: VegaChart: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: VegaChart: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Spec = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Table) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Table: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Table: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field GutterColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.GutterColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Graph) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: Graph: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: Graph: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field DotColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Input = &Graph_DotColumn{string(dAtA[iNdEx:postIndex])}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field AdjacencyList", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			v := &Graph_AdjacencyList{}
			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			m.Input = &Graph_AdjacencyList_{v}
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field EdgeWeightColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.EdgeWeightColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field NodeWeightColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.NodeWeightColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 5:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field EdgeColorColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.EdgeColorColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 6:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field EdgeThresholds", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.EdgeThresholds == nil {
				m.EdgeThresholds = &Graph_EdgeThresholds{}
			}
			if err := m.EdgeThresholds.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 7:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field EdgeHoverInfo", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.EdgeHoverInfo = append(m.EdgeHoverInfo, string(dAtA[iNdEx:postIndex]))
			iNdEx = postIndex
		case 8:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field EdgeLength", wireType)
			}
			m.EdgeLength = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.EdgeLength |= int64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 9:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field EnableDefaultHierarchy", wireType)
			}
			var v int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				v |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			m.EnableDefaultHierarchy = bool(v != 0)
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Graph_AdjacencyList) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: AdjacencyList: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: AdjacencyList: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field FromColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.FromColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ToColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ToColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *Graph_EdgeThresholds) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: EdgeThresholds: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: EdgeThresholds: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field MediumThreshold", wireType)
			}
			m.MediumThreshold = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.MediumThreshold |= int64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 2:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field HighThreshold", wireType)
			}
			m.HighThreshold = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.HighThreshold |= int64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *RequestGraph) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: RequestGraph: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: RequestGraph: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field RequestorPodColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.RequestorPodColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ResponderPodColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ResponderPodColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field RequestorServiceColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.RequestorServiceColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ResponderServiceColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ResponderServiceColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 5:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field P50Column", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.P50Column = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 6:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field P90Column", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.P90Column = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 7:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field P99Column", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.P99Column = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 8:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ErrorRateColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ErrorRateColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 9:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field RequestsPerSecondColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.RequestsPerSecondColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 10:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field InboundBytesPerSecondColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.InboundBytesPerSecondColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 11:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field OutboundBytesPerSecondColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.OutboundBytesPerSecondColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 12:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field TotalRequestCountColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.TotalRequestCountColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 13:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field RequestorIPColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.RequestorIPColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 14:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ResponderIPColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ResponderIPColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *StackTraceFlameGraph) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowVis
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: StackTraceFlameGraph: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: StackTraceFlameGraph: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field StacktraceColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.StacktraceColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field CountColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.CountColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field PercentageColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.PercentageColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field NamespaceColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.NamespaceColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 5:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field PodColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.PodColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 6:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ContainerColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ContainerColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 7:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field PidColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.PidColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 8:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field NodeColumn", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.NodeColumn = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 9:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field PercentageLabel", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowVis
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthVis
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthVis
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.PercentageLabel = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipVis(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthVis
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func skipVis(dAtA []byte) (n int, err error) {
	l := len(dAtA)
	iNdEx := 0
	depth := 0
	for iNdEx < l {
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return 0, ErrIntOverflowVis
			}
			if iNdEx >= l {
				return 0, io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= (uint64(b) & 0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		wireType := int(wire & 0x7)
		switch wireType {
		case 0:
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return 0, ErrIntOverflowVis
				}
				if iNdEx >= l {
					return 0, io.ErrUnexpectedEOF
				}
				iNdEx++
				if dAtA[iNdEx-1] < 0x80 {
					break
				}
			}
		case 1:
			iNdEx += 8
		case 2:
			var length int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return 0, ErrIntOverflowVis
				}
				if iNdEx >= l {
					return 0, io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				length |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if length < 0 {
				return 0, ErrInvalidLengthVis
			}
			iNdEx += length
		case 3:
			depth++
		case 4:
			if depth == 0 {
				return 0, ErrUnexpectedEndOfGroupVis
			}
			depth--
		case 5:
			iNdEx += 4
		default:
			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
		}
		if iNdEx < 0 {
			return 0, ErrInvalidLengthVis
		}
		if depth == 0 {
			return iNdEx, nil
		}
	}
	return 0, io.ErrUnexpectedEOF
}

var (
	ErrInvalidLengthVis        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowVis          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupVis = fmt.Errorf("proto: unexpected end of group")
)
